繁体   English   中英

MySQL按所选表的数组值排序

[英]MySQL sort order by array value of selected table

与例如

ORDER BY field(id, 9, 1, 4)

我可以按9,1、4的顺序订购。

是否也可以通过我选择的同一张表的逗号分隔字符串进行排序?

我试过了

ORDER BY field(id, aFieldFromTheTableIAmSelecting)

其中aFieldFromTheTableIAmSelecting为“ 9,1,4”

但这不起作用。

这个问题类似于MySQL按数组值排序的顺序

您可以尝试find_in_set()

ORDER BY find_in_set(id, aFieldFromTheTableIAmSelecting)

您可以使用locate()

ORDER BY locate(concat(',', id, ','), concat(',', aFieldFromTheTableIAmSelecting, ','))

aFieldFromTheTableIAmSelecting内部aFieldFromTheTableIAmSelecting有空格。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM