私はテーブルを持っています:
posts:
ID | 著者 | コンテンツ
1 回のクエリでこのテーブルからすべてのエントリを選択する必要がありますが、作成者が "demo" である投稿が最初にある必要があります。
私はテーブルを持っています:
posts:
ID | 著者 | コンテンツ
1 回のクエリでこのテーブルからすべてのエントリを選択する必要がありますが、作成者が "demo" である投稿が最初にある必要があります。
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 |
| |
|_______________________________________________________________________________|
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
著者フィールドを最初にしたい場合は、書く必要があります
select author, id, content FROM posts ORDER BY author
さもないと
select * FROM posts order by author