【发布时间】:2015-05-31 15:04:31
【问题描述】:
我有一个返回多行的 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能不能返回和使用一个表。我玩过返回字符串(如',English,Spanish,')并使用以下内容进行连接的技巧:
-
不知道MYSQL能不能返回和使用一个表。我玩过返回字符串(如',English,Spanish,')并使用以下内容进行连接的技巧:JOIN ErrorMesage em ON User_Language(pCompanyID, pUserID) LIKE CONCAT('%,',em.Language',', %') 我需要考虑如何对结果进行排序。只是一个想法。