MySQL 提供精确的预先指定的 ORDER BY 子句

标签 mysql sql

我将如何执行以下查询:

SELECT
    *
FROM
    main_items
WHERE 
    group_id IN ('985ce7', 'fc154', 'f387cd', 'd3d27')
GROUP BY
    group_id 
ORDER BY                                   
    ('985ce7', 'fc154', 'f387cd', 'd3d27') # this is the line I'm referring to

基本上,我希望按照我上面指定的确切顺序订购商品。我该怎么做?

最佳答案

尝试以下任一方法:

ORDER BY FIELD(group_id, '985ce7', 'fc154', 'f387cd', 'd3d27')

ORDER BY FIND_IN_SET(group_id, '985ce7,fc154,f387cd,d3d27')

如果 group_id 的值包含逗号,则第一个选项将成为唯一选项。

关于MySQL 提供精确的预先指定的 ORDER BY 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28052293/

相关文章:

python - PyMySQL:连接被主机中的软件中止

使用for循环的递增日期的php代码在更新条件下不起作用

mysql - 如何将 UPDATE 查询与子查询相结合?

php - 如何将 SQL 与 PHP 分开?

MySQL REGEXP 无法与俄语字符正常工作

mysql - 如何在不获取重复数据的情况下进行查询?

php - 如何通过使用 ('disabled' 而不是 'class' 在 php 中使用 removeAttr 'id' )?

mysql - 从表中按年、月、周选择数据

c# - 如何在 C# 中修改 Access DB 的架构

mysql group by 帮助