Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql按值排序_Mysql_Sql Order By - Fatal编程技术网

Mysql按值排序

Mysql按值排序,mysql,sql-order-by,Mysql,Sql Order By,我有一张桌子: 帖子:id |作者|内容 我需要用一个查询从这个表中选择所有条目,但是作者演示写的文章必须放在第一位。如果你想把作者字段放在第一位,那么你必须先写 select author, id, content FROM posts ORDER BY author 否则 select * FROM posts order by author 如果您想在此处订购其他人,请使用另一个示例: _________________________________________________

我有一张桌子:

帖子:id |作者|内容


我需要用一个查询从这个表中选择所有条目,但是作者演示写的文章必须放在第一位。

如果你想把作者字段放在第一位,那么你必须先写

select author, id, content FROM posts ORDER BY author
否则

select * FROM posts order by author
如果您想在此处订购其他人,请使用另一个示例:

 _______________________________________________________________________________
|                                                                               |
|                                                                               |
|      SELECT * FROM post ORDER BY                                              |
|       CASE                                                                    |
|       WHEN author = 'demo' THEN post1                                         |
|       WHEN author = 'sdvg' THEN id                                            |
|       END DESC                                                                |
|                                                                               |
|_______________________________________________________________________________|

我会使用一个并集,并使用预定义的值进行排序。 先按演示选择所有帖子,然后按演示选择非演示帖子

SELECT id, author, content, 1 AS special FROM posts WHERE author='demo'
UNION
SELECT id, author, content, 0 AS special FROM posts WHERE author<>'demo'
ORDER BY special DESC

@MindaugasJakubauskas我添加了一个演示并编辑了我的答案,以及其他示例,如果您想订购更多,则单击author=demo
SELECT id, author, content, 1 AS special FROM posts WHERE author='demo'
UNION
SELECT id, author, content, 0 AS special FROM posts WHERE author<>'demo'
ORDER BY special DESC