ホームページ >データベース >mysql チュートリアル >最初に NULL 値を使用して PostgreSQL レコードを日付順に並べるにはどうすればよいですか?

最初に NULL 値を使用して PostgreSQL レコードを日付順に並べるにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-23 02:45:10274ブラウズ

How to Order PostgreSQL Records by Date with NULL Values First?

PostgreSQL データベース レコードは日付順に並べ替えられ、null 値が最初に表示されます

PostgreSQL では、null 値のレコードが最初に来るようにしながら、クエリ結果を日付/時刻フィールド (last_updated など) で昇順に並べ替える必要がよくあります。

PostgreSQL は、この目的を達成するために、ORDER BY 式の NULLS FIRST | LAST 修飾子を提供します。デフォルトでは、NULLS FIRST は降順 (DESC) で使用され、null 値が最後にソートされます。 NULL 値を最初に昇順 (ASC) で並べ替えるには、次の構文を使用できます:

<code class="language-sql">... ORDER BY last_updated NULLS FIRST</code>

インデックスがこのクエリをサポートするには、インデックスが並べ替え順序と一致する必要があります:

<code class="language-sql">CREATE INDEX foo_idx ON tbl (last_updated DESC NULLS LAST);</code>

PostgreSQL は転置インデックスを効率的に処理でき、次のようになります。

<code class="language-sql">CREATE INDEX foo_idx ON tbl (last_updated);</code>

ただし、一部のクエリ プランでは、NULL 値の位置がパフォーマンスに影響を与える可能性があります。このトピックの詳細については、以下を参照してください:

以上が最初に NULL 値を使用して PostgreSQL レコードを日付順に並べるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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