小编典典

根据匹配条件对SQL记录进行排序

sql

我有这个查询:

SELECT * FROM table WHERE key LIKE '1,2,3,%' OR key LIKE '1,2,%' OR key LIKE '1,%'

是否可以根据首先匹配的条件对从该查询返回的记录进行排序。我想先获取所有匹配的记录key LIKE '1,2,3,%',然后再key LIKE '1,2,%'获取其他匹配的记录。

例如,如果我有以下记录:

key: "1,2,3,4"
key: "1,2,5"
key: "1,4"
key: "1,2,5,6"
key: "1,3"
key: "1,2,3,4,7"
key: "1,2,4"

我希望对它们进行如下排序:

key: "1,2,3,4"
key: "1,2,3,4,7"
key: "1,2,4"
key: "1,2,5"
key: "1,2,5,6"
key: "1,3"
key: "1,4"

有可能吗?


阅读 219

收藏
2021-04-28

共1个答案

小编典典

.... ORDER BY CASE WHEN key LIKE '1,2,3,%' THEN 1 WHEN key LIKE '1,2,%' THEN 2 ELSE 3 END

2021-04-28