MySQL通过id指定任意顺序
作者:互联网
是否可以为MySQL SELECT语句指定任意顺序?例如.,
SELECT * FROM table_name WHERE id IN (1, 3, 2, 9, 7) ORDER BY (1, 3, 2, 9, 7);
在IN之后直接列出的数字的顺序似乎并不重要.
解决方法:
FIND_IN_SET函数可以解决这个问题
SELECT * FROM table_name WHERE id IN (1, 3, 2, 9, 7) ORDER BY FIND_IN_SET(id, '1,3,2,9,7');
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_find-in-set
编辑:注意find_in_set函数的字符串参数中缺少空格.
标签:mysql,sql-order-by,where-in 来源: https://codeday.me/bug/20191001/1838654.html