MySQL ORDER问题

问题描述:

我有一个非常简单的SQL查询,但是缺少某些内容,但是我还没有找到解决该问题的答案. 事实是,我选择了一些带有多个ID的字段,并且希望结果按此特定顺序排序.

I have a pretty simple SQL query but something is missing and I didn't find an answer for this problem yet. The thing is that I select some fields with several ids and I want the result to be ordered in this particular order.

查询如下

SELECT `content`.* 
FROM   `content` 
WHERE  (user_id = "1" AND ( id = "4" OR id = "7" OR id = "5" OR id = "8" )) 

默认顺序为"id ASC"(id是我的主键),但在这种情况下,我希望该顺序为4,7,5,8.

The default order is "id ASC" (id is my primary key), but I want the order to be 4,7,5,8 in this particular case.

有什么想法吗?

这将满足您的要求:

select * 
from myTable
order by field(myID, 8, 7, 6) desc;

您可以设置要显示的任何ID(或其他任何ID)的顺序,此后将跟随其他任何ID.希望有帮助.

You can set the order of whatever ID's (or whatever) youwant to appear, and any others will follow after that. Hope that helps.

有关此内容的更多信息@ http://dev .mysql.com/doc/refman/5.0/zh-CN/string-functions.html#function_field

More on this @ http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_field