ホームページ > データベース > mysql チュートリアル > PostgreSQL で年次時系列を生成するには?

PostgreSQL で年次時系列を生成するには?

Mary-Kate Olsen
リリース: 2025-01-21 16:46:12
オリジナル
860 人が閲覧しました

How to Generate a Yearly Time Series in PostgreSQL?

PostgreSQL での年次時系列の生成: 堅牢なアプローチ

標準の日付演算を使用して PostgreSQL で複数年にわたる時系列を作成するのは困難な場合があります。 より信頼性の高い方法では、タイムスタンプを利用します。

解決策:

このクエリは、数年にわたる毎日の時系列を効率的に生成します。

<code class="language-sql">SELECT date_trunc('day', dd)::date
FROM generate_series
        ('2007-02-01'::timestamp
        , '2008-04-01'::timestamp
        , '1 day'::interval) dd;</code>
ログイン後にコピー

その仕組みは次のとおりです:

  • タイムスタンプ変換: 開始日と終了日 ('2007-02-01' および '2008-04-01') は、::timestamp を使用してタイムスタンプに明示的にキャストされます。これにより、年の境界を正確に処理できるようになります。
  • generate_series 関数: generate_series 関数は、1 日ずつ増加する一連のタイムスタンプを作成します ('1 day'::interval)。
  • 日付の切り捨てとキャスト: date_trunc('day', dd) は各タイムスタンプをその日の始まりまで切り捨て、::date は結果を date データ型にキャストして出力をきれいにします。

このアプローチでは、異なる年にわたる日付を扱う場合でも、正確な時系列の生成が保証されます。

以上がPostgreSQL で年次時系列を生成するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート