我有一个像下面这样的表,用于保存用户记录。我想列出权限字段为0的用户,然后是权限为1的用户。但是,我也想按字母顺序排列它们。我如何排序两个SELECT查询并将它们组合
这是我的表:
users
--------------------------------
user_id name permission
1 jack 0
2 anne 0
3 kate 0
4 steve 1
5 roger 0
6 judy 1
7 robin 0
8 stella 1
9 arthur 0
而且我想要得到这样的结果:
users
---------------------------------
user_id name permission
2 anne 0
9 arthur 0
1 jack 0
3 kate 0
7 robin 0
5 roger 0
6 judy 1
8 stella 1
4 steve 1
正如你可以看到,有两组,先用权限的用户“0”和稍后的权限“1”。但每个组也按字母顺序排序。
(
SELECT *
FROM `users`
ORDER BY name ASC
)
UNION (
SELECT *
FROM `users`
ORDER BY name ASC
)
ORDER BY permission ASC
我试图通过排序和组合它们来分别得到两个组,但它不是按我想要的方式工作。
你实际得到了什么结果? – Takarii
'users'和'name'是两个不同的表吗? – Viki888