这是带有IN子句的简单查询。但是问题是我需要以id的相同顺序获取输出。
SELECT GROUP_CONCAT(username) as users FROM usertable WHERE usr_id IN (54,68,46)
例如,如果我通过了54、68、46,则具有usr_id 54的行应首先出现,然后是68,然后是46。有什么办法可以在MySQL中实现呢?
我们可以使用FIND_IN_SETon order by子句以相同的顺序获取值。
SELECT `username` as users FROM usertable WHERE usr_id IN (54,68,46) ORDER BY FIND_IN_SET(`usr_id`,"54,68,46")
Run Code Online (Sandbox Code Playgroud)
但是我不知道该怎么做GROUP_CONCAT。如果有人用这种简单的方法给出答案,我可以接受。