我有以下的SQL语句:UNION ALL - > ORDER BY不按预期工作......?
(SELECT animation_id,
animation_name,
animation_group
FROM animations
WHERE animation_id = '45')
UNION ALL
(SELECT animation_id,
animation_name,
animation_group
FROM animations
WHERE animation_id <> '45'
AND active = TRUE
ORDER BY animation_group,
animation_name)
表看起来是这样的:
的排序是不正常。我希望数据按“animation_group”列进行排序,但结果会在“animation_id”后面排序。 看截图,其中显示输出:
如果是相关的:它是MySQL的。该声明是通过PHP调用的。
SQL语句是否正确?
谢谢!
编辑: 我的要求的基础或可以说,为什么我使用UNION是以下原因:
第一选择的结果应该永远是第一行。 第二个选择的结果应该按照。所以我不想要整个结果。
尝试删除括号,以便对整个结果集使用“ORDER BY”。 –