gpt4 book ai didi

mysql - 如何以自定义格式而不是字母数字方式对 SQL 数据进行排序

转载 作者:行者123 更新时间:2023-11-29 03:59:32 26 4
gpt4 key购买 nike

我想知道是否可以在 SQL 中以不同于列的标准字母数字排序的格式对查询结果进行排序。例如,考虑表“表”,

Sample Table

以下脚本将根据“颜色”列按字母顺序排列表格:

SELECT * FROM Table ORDER BY Color;

我怎样才能让颜色顺序为绿色、蓝色、红色?也就是说,我如何使用我定义的订单格式进行订购?

最佳答案

使用 MySQL 时:

ORDER BY FIELD(Color,'GREEN','BLUE,'RED') ASC

文档:https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_field

请注意,如果第一个参数的值在后续参数中根本不存在,或者当它为 NULL 时,FIELD(..) 将评估为 0。因此,如果这些情况中的任何一个属于可能性,那么您需要格外小心,否则这些将是最佳结果。因此,在这种情况下,我会亲自提供所需的相反顺序并使用 DESC,例如在你的情况下:

ORDER BY FIELD(Color,'RED','BLUE,'GREEN') DESC

关于mysql - 如何以自定义格式而不是字母数字方式对 SQL 数据进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52794405/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com