在MySQL中将一个特定字母放在所有其他字母之前

时间:2011-11-26 07:27:07

标签: php mysql

我目前正在使用:

SELECT * FROM OptSubjectItems ORDER BY yr, subject;

从数据库中获取一些信息。这很好,除了我需要先记录yr = x 的记录,然后按年份和主题排序。我试过了:

SELECT * FROM OptSubjectItems ORDER BY yr=*x*, yr, subject;

来自this question,但这显示的是yr = x 最后的内容,而不是第一个内容。

谢谢, Jamie McClymont

2 个答案:

答案 0 :(得分:2)

你几乎是解决方案。只是一个补充

SELECT * FROM OptSubjectItems ORDER BY (yr=x) DESC, subject DESC;

答案 1 :(得分:2)

SELECT * FROM OptSubjectItems ORDER BY 
case when yr=x then 0 else 1 end, yr, subject
相关问题