1

私はテーブルを持っています:

posts: ID | 著者 | コンテンツ

1 回のクエリでこのテーブルからすべてのエントリを選択する必要がありますが、作成者が "demo" である投稿が最初にある必要があります。

4

3 に答える 3

1
SELECT * FROM posts 
ORDER BY CASE 
    WHEN author = 'demo' THEN posts
END DESC

デモ

ここで他の人に注文したい場合は、別の例:

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

デモ

于 2013-06-20T09:46:36.010 に答える
1

UNION を使用し、定義済みの値を ORDER BY に使用します。最初にデモですべての投稿を選択し、次にデモではない投稿を選択します

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
于 2013-06-20T09:55:36.973 に答える
0

著者フィールドを最初にしたい場合は、書く必要があります

select author, id, content FROM posts ORDER BY author

さもないと

select * FROM posts order by author
于 2013-06-20T09:46:06.743 に答える