In SQL you can order by an expression like:
SELECT * FROM a ORDER BY CASE WHEN a.Category = 20 THEN 1 ELSE 0 DESC
so records who have Categ
I've accepted hross's answer, but it's also possible to do something like this in Solr 1.3 and up, using:
/select?q={!func}map(Category,20,20,1,0)&sort=score desc
The cool thing is that you can still sort on other fields, so:
&sort=score desc, name asc