gpt4 book ai didi

mysql - 按两条规则对一张表进行排序

转载 作者:行者123 更新时间:2023-11-29 05:28:53 24 4
gpt4 key购买 nike

我有一张表,想按以下规则排序。
我将 SQL 执行为:
(1) select * from table orderby rank;
(2) select * from table orderby LENGTH(str);
但是我如何根据 (if rank>0) 语句组合这两个 SQL?
这个想法就像
subTable_1 which rank>0, than sort by rank;
subTable_2 which rank==0, than sort by str.length;
结果=subTable_1 + subTable_2;
非常感谢


表格:
| str |排名|
| ab | 2 |
| abcd | 5 |
|美国广播公司 | 0 |
|一个 | 0 |

结果:
| str |排名|
| abcd | 5 |
| ab | 2 |
|一个 | 0 |
|美国广播公司 | 0 |

最佳答案

很简单。只需尝试以下操作:

SELECT * FROM table 
ORDER BY rank DESC, LENGTH(str) ASC;

关于mysql - 按两条规则对一张表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16889470/

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