ホームページ  >  記事  >  データベース  >  IN() を使用して特定のシーケンスで MySQL レコードを並べ替えるにはどうすればよいですか?

IN() を使用して特定のシーケンスで MySQL レコードを並べ替えるにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-16 00:06:03216ブラウズ

How to Order MySQL Records by a Specific Sequence Using IN()?

IN() を使用した指定されたシーケンスによる MySQL の順序付け

この質問は、ID の配列に基づいて特定の順序でデータベース レコードを取得することを中心に展開します。 PHPで提供されます。課題は、結果が IN() メソッドの ID の順序と確実に一致するようにすることです。

これを達成するために、推奨されるソリューションでは FIELD 関数を利用します。 FIELD は主に文字列操作を目的としていますが、数値もシームレスに操作できます。 ORDER BY 句で FIELD 関数を使用すると、レコードの希望の順序を明示的に指定できます。

たとえば、次の SQL ステートメントを考えてみましょう。

ORDER BY FIELD(field_name, 3,2,5,7,8,1)

このステートメントでは、 field_name は、ID を含む列を表します。括弧内の数字は、レコードを取得する順序を表します。したがって、field_name 列に値 (3,2,5,7,8,1) が含まれている場合、レコードは 3、2、5、7、8、1 の順序で返されます。

以上がIN() を使用して特定のシーケンスで MySQL レコードを並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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