WHERE IN 句の順序に基づいて行を並べ替えるにはどうすればよいですか?

DDD
リリース: 2024-10-27 12:40:03
オリジナル
293 人が閲覧しました

How to Order Rows Based on the Order in a WHERE IN Clause?

ORDER BY FIELD を使用した WHERE IN 句に従って行を並べる

データベース クエリでは、WHERE IN 句を使用して、次の条件に基づいてデータをフィルタリングできます。指定された値のリスト。ただし、デフォルトでは、返される行は句で指定した順序と異なる場合があります。

WHERE IN 句で指定された順序に従って行を並べるには、ORDER BY FIELD( ) 関数。この関数は 2 つの引数を取ります:

  • 行を並べ替える基準となるフィールド (この場合は ID フィールド)
  • WHERE IN からの値のカンマ区切りのリスト句

たとえば、次のクエリがあるとします。

SELECT *
FROM table
WHERE id IN (118, 17, 113, 23, 72);
ログイン後にコピー

これは、ID の昇順で行を返します。ORDER BY FIELD() 関数を使用して、 WHERE IN 句で指定された順序で行:

SELECT *
FROM table
WHERE id IN (118, 17, 113, 23, 72)
ORDER BY FIELD(id, 118, 17, 113, 23, 72)
ログイン後にコピー

このクエリでは、ORDER BY FIELD() 関数は ID フィールドによって行を並べ替えますが、その順序は 118、17、113 です。

この手法を使用すると、WHERE IN 句で指定された順序に従って行を簡単に並べ替えることができ、行が目的の順序で返されるようにすることができます。

以上がWHERE IN 句の順序に基づいて行を並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!