gpt4 book ai didi

mysql - 如何根据条件排序?

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

仅当类型为 A 时,我想按“数字”对表进行排序

| number | type |
|--------|------|
| 1 | A |
| 2 | B |
| 3 | B |
| 4 | A |
| 5 | A |

请求会给出:

| number | type |
|--------|------|
| 1 | A |
| 4 | A |
| 5 | A |
| 2 | B |
| 3 | B |

先对“A”类型的行进行排序,然后列出“B”类型的行(无论顺序如何)

没有 UNION 可以吗?

最佳答案

DROP TABLE IF EXISTS my_table;

CREATE TABLE my_table
(number SERIAL PRIMARY KEY
,type CHAR(1) NOT NULL
);

INSERT INTO my_table VALUES
(1,'A'),
(2,'B'),
(3,'B'),
(4,'A'),
(5,'A');

SELECT * FROM my_table ORDER BY type,CASE WHEN type = 'A' THEN number ELSE RAND() END;
+--------+------+
| number | type |
+--------+------+
| 1 | A |
| 4 | A |
| 5 | A |
| 3 | B |
| 2 | B |
+--------+------+

关于mysql - 如何根据条件排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56494115/

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