特定の値を持つ行を最初に返す
特定のデータベース クエリでは、特定の値を含む行の表示を優先することが望ましい場合があります。 。たとえば、次のテーブルについて考えてみましょう。
テーブル: Users
id | name | city |
---|---|---|
1 | George | Seattle |
2 | Sam | Miami |
3 | John | New York |
4 | Amy | New York |
5 | Eric | Chicago |
6 | Nick | New York |
最初に city 列に「New York」が含まれる行を取得し、次に残りの行を取得する場合都市のアルファベット順では、次のクエリを利用できます:
SQL Server、Oracle、およびDB2:
ORDER BY CASE WHEN city = 'New York' THEN 1 ELSE 2 END, city
このクエリは CASE 式を使用して、都市値として「ニューヨーク」を含む行に優先度 1 を割り当て、それ以外の場合は優先度 2 を割り当てます。次に、ORDER BY 句は、この優先順位を都市列とともに並べ替えに使用します。その結果、「ニューヨーク」を含む行が最初に返され、その後、都市のアルファベット順に並べられた残りの行が返されます。
以上がデータベースクエリで特定の行に優先順位を付けるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。