У меня есть хранимая процедура MySQL, которая возвращает несколько строк. Есть ли способ использовать этот результат в Inner Join с другой таблицей? Я пробовал:MySQL - Использование результата хранимой процедуры во внутреннем соединении
SELECT ErrorMessage FROM ErrorMessage em
INNER JOIN User_Language(pCompanyID, pUserID) l ON em.Language=l.LanguageID
WHERE ErrorCode = pErrorCode
ORDER BY l.LanguageOrder LIMIT 1;
В этом примере User_Language это хранимая процедура, которая возвращает список языков в порядке предпочтения. Цель состоит в том, чтобы вернуть сообщение об ошибке на предпочтительный язык пользователя.
Я не знаю, что MYSQL может вернуться и использовать таблицу. Я сыграл трюки, возвращающие строку (например, «английский, испанский») и делая соединение с чем-то вроде: –
Я не знаю, что MYSQL может вернуть и использовать таблицу. Я сыграл трюки, возвращающие строку (например, «, английский, испанский»), и присоединяюсь к чему-то вроде: JOIN ErrorMesage em ON User_Language (pCompanyID, pUserID) LIKE CONCAT ('%,', em.Language, ',%') Мне нужно будет подумать о том, как упорядочить результаты. Просто мысль. –