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

I am currently using:

SELECT * FROM OptSubjectItems ORDER BY yr, subject;

to get some information from a database. That works fine, except that I need to have records where yr=x first, then the others, sorted by year and subject. I tried:

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

from this question, but that shows things where yr=x last, rather than first.

Thanks, Jamie McClymont

You are nearly the solution. Just a addition

SELECT * FROM OptSubjectItems ORDER BY (yr=x) DESC, subject DESC;
SELECT * FROM OptSubjectItems ORDER BY 
case when yr=x then 0 else 1 end, yr, subject