ホームページ >データベース >mysql チュートリアル >MySQL で特定の行に優先順位を付けて残りを順序付けるにはどうすればよいですか?

MySQL で特定の行に優先順位を付けて残りを順序付けるにはどうすればよいですか?

DDD
DDDオリジナル
2025-01-24 09:26:10711ブラウズ

How Can I Prioritize a Specific Row and Then Order the Rest in MySQL?

MySQL 結果セットの優先順位付け

MySQL では、データを取得し、特定の項目をリストの先頭に表示し、残りの項目を特定の順序で表示する必要がある場合があります。これは、ORDER BY 句を使用して実現できます。

最初に 1 つの項目 (ここでは ID 5) を表示してから残りを並べ替えるには、次のクエリを使用できます:

<code class="language-sql">SELECT id, name
FROM friends
ORDER BY id = 5 DESC, id ASC;</code>

このクエリは、条件 id = 5 に基づいて結果を降順に並べ替えます。したがって、id = 5 を含む行はリストの先頭に配置され、その後に残りの行が id 値の昇順に配置されます。

手順:

  • ORDER BY 句を使用すると、結果の並べ替え基準を指定できます。
  • id = 5 DESC は、id が 5 に等しい場合は TRUE と評価され、そうでない場合は FALSE と評価されます。 TRUE の優先順位が FALSE よりも高いため、この式を降順で並べ替えると、id = 5 を含む行が最初に表示されます。
  • id ASC は、残りの行を id 値に基づいて昇順に並べ替えます。

以上がMySQL で特定の行に優先順位を付けて残りを順序付けるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。