|
order by句で列を指定してソートすると、デフォルトではNULLのデータは最後にソートされます。 NULLのデータを最初に持ってきてソートしたい場合はorder by句で列指定後、 NULLS FIRST を指定するとNULLのデータが最初にselectされその後NOT NULLのデータがソートされます。 以下のようなデータがあるとします。 ![]() 上図のようなデータがあるとします。 このデータに対して以下のSQLを発行します。 select pn,order_no from parts_tbl order by order_no nulls first;すると、検索結果は以下のようになります。 ![]() 逆にまずNOT NULLのデータをソートし、最後にNULLのデータを持ってきたい場合 NULLS LAST を指定して以下のSQLを発行します。 select pn,order_no from parts_tbl order by order_no nulls last;すると、検索結果は以下のようになります。 ![]() ちなみにNULLを先頭に持ってきてNOT NULLのデータは降順にソートしたい場合は以下のようなSQLを発行します。 select pn,order_no from parts_tbl order by order_no desc nulls first;検索結果は以下のようになります。 ![]() |