ホームページ >データベース >mysql チュートリアル >SQL NULL 値を昇順リストの最後にソートするにはどうすればよいですか?

SQL NULL 値を昇順リストの最後にソートするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-05 22:36:47365ブラウズ

How to Sort SQL NULL Values to the End of an Ascending Order List?

最後の SQL Null 値を昇順で並べ替える

日時フィールドを含む SQL テーブルを操作する場合、多くの場合、日付時刻フィールドを並べ替えることが望ましいです。結果は昇順になりますが、null 以外の値が優先されます。ただし、デフォルトでは、null 値は並べ替えられた昇順リストの先頭に表示されます。

これを解決するには、条件式を利用して、並べ替え中に null 以外の値に高い優先順位を割り当てることができます。簡単な解決策は次のとおりです。

select MyDate
from MyTable
order by case when MyDate is null then 1 else 0 end, MyDate

このクエリは、null 日時値に値 1 を割り当て、null 以外の値に 0 を割り当てます。 CASE ステートメントは、並べ替え時に null 以外の値を優先する CASE 式として機能します。その結果、並べ替えられた昇順リストでは、null 以外の値が null 値の前に表示されます。

この手法を利用すると、SQL 結果を効果的に昇順に並べ、null 値をリストの最後に配置して、次のことを保証できます。分析とプレゼンテーションでは、意味のあるデータが優先されます。

以上がSQL NULL 値を昇順リストの最後にソートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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