PostgreSQL BETWEEN クエリと例

⚡ スマートサマリー

PostgreSQL BETWEEN 関数は、SELECT、INSERT、UPDATE、または DELETE ステートメント内で、指定された範囲内の値を取得します。式を 2 つの境界値と比較し、数値データと日付データの両方に対応し、NOT 演算子による否定をサポートします。

  • 📌 主な目的: BETWEEN演算子は、ANDで結合された2つの値によって定義された範囲に対して式を照合します。
  • 🔢 包括的な範囲: 境界値は両方とも含まれるため、BETWEEN 200 AND 280 は 200 または 280 に等しい行を返します。
  • 📅 数字と日付: 同じ構文で、引用符で囲まれた日付リテラルを使用して、数値列と日付列をフィルタリングできます。
  • 🚫 非バリアント: BETWEENの前にNOTを追加すると、指定された範囲外のすべての行が返されます。
  • 甘いもの<XNUMXxXNUMX><XNUMXxXNUMX><XNUMXxAXNUMX><XNUMXxAXNUMX>️️ pgAdminの実行: 同じクエリは、pgAdminのクエリエディタで「Demo」データベースを選択し、「実行」をクリックすることで実行されます。

PostgreSQL BETWEEN クエリと例

BETWEEN Operaねじ込む PostgreSQL

その PostgreSQL BETWEEN Operator は、SELECT、UPDATE、INSERT、または DELETE ステートメントで、範囲内の値を取得するのに役立ちます。BETWEEN 演算子を使用すると、値を値の範囲と照合できます。範囲は包含的であるため、境界値も一致の一部として扱われます。

PostgreSQL 間クエリ構文

BETWEEN演算子の構文は次のとおりです。 PostgreSQL:

expression BETWEEN value-1 AND value-2;

この式は、単なる列または計算式です。値1と値2によって、式を比較するための範囲が作成されます。

PostgreSQL 数値を含むクエリ間

数値に BETWEEN 演算子を適用する方法を示す例を作成する必要があります。以下の Price テーブルを検討してください。

価格:

PostgreSQL 数値を含むクエリ間

価格が200から280の間の書籍の一覧を見てみましょう。

SELECT *
FROM Price
WHERE price BETWEEN 200 AND 280;

次のように返されます。

PostgreSQL 数値を含むクエリ間

価格が200から280の範囲にある商品は2点のみです。なお、200と280の2つの境界値が含まれています。

PostgreSQL 日付付きクエリ間

BETWEEN 演算子は日付値に使用できます。つまり、処理する必要がある日付値の範囲を指定できます。次の Employees テーブルを検討してください。

従業員:

PostgreSQL 日付付きクエリ間

2013-01-01 から 2015-01-01 の間に雇用されていたすべての従業員を確認したい場合は、次のコマンドを実行します。

SELECT *
FROM Employees
WHERE employment_date BETWEEN '2013-01-01' AND '2015-01-01';

これにより、次が返されます。

PostgreSQL 日付付きクエリ間

NOT を使用した Postgres Between クエリ Operaタ

BETWEEN 演算子と NOT 演算子を組み合わせることができます。その場合、指定された範囲内にない値のリストが返されます。

たとえば、価格が 200 から 280 の範囲外にあるすべてのアイテムを表示するには、次のクエリを実行します。

SELECT *
FROM Price
WHERE price NOT BETWEEN 200 AND 280;

次のように返されます。

NOT を使用した Postgres Between クエリ Operaタ

価格が200~280の範囲外の商品が2点見つかりました。そのため、それらの詳細情報は返却されました。

PostgreSQL pgAdminを使用したクエリ間

それでは、これらの操作をpgAdminを使って実行する方法を見ていきましょう。クエリは上記と同じですが、実行環境が異なります。

数値を含む Between クエリの使用方法 PostgreSQL pgAdminを使用する

数値を含む Between クエリを使用する方法は次のとおりです。 PostgreSQL pgAdminを使用する:

ステップ1) pgAdmin アカウントにログインします。

pgAdminを開き、認証情報を使用してアカウントにログインしてください。

ステップ2) デモデータベースを作成します。

  1. 左側のナビゲーション バーで、[データベース] をクリックします。
  2. 「デモ」をクリックします。

PostgreSQL pgAdminを使用したクエリ間

ステップ3) クエリ エディターに次のクエリを入力します。

SELECT *
FROM Price
WHERE price BETWEEN 200 AND 280;

ステップ4) 「実行」ボタンをクリックします。

PostgreSQL pgAdminを使用したクエリ間

次のような結果が返されます。

PostgreSQL pgAdminを使用したクエリ間

日付付き

pgAdmin を使用して同じことを実行するには、次の手順を実行します。

ステップ1) pgAdmin アカウントにログインします。

ステップ2)

  1. 左側のナビゲーション バーで、[データベース] をクリックします。
  2. 「デモ」をクリックします。

クエリ間 PostgreSQL 日付付き

ステップ3) クエリ エディターにクエリを入力します。

SELECT *
FROM Employees
WHERE employment_date BETWEEN '2013-01-01' AND '2015-01-01';

ステップ4) 「実行」ボタンをクリックします。

クエリ間 PostgreSQL 日付付き

次のような結果が返されます。

クエリ間 PostgreSQL 日付付き

NOTの使用 Operaタ

pgAdmin を使用して同じことを実行するには、次の手順を実行します。

ステップ1) pgAdmin アカウントにログインします。

ステップ2)

  1. 左側のナビゲーション バーで、[データベース] をクリックします。
  2. 「デモ」をクリックします。

クエリ間 PostgreSQL NOTを使用する Operaタ

ステップ3) クエリ エディターにクエリを入力します。

SELECT *
FROM Price
WHERE price NOT BETWEEN 200 AND 280;

ステップ4) 「実行」ボタンをクリックします。

PostgreSQL NOTを使用した間クエリ Operaタ

次のような結果が返されます。

PostgreSQL NOTを使用した間クエリ Operaタ

このチュートリアルで使用するデータベースをダウンロードする

よくあるご質問

はい。AIアシスタントは、「2つの日付間の注文」といった平易な英語を、正しい列、範囲、引用符を含む有効なBETWEENクエリに変換できます。生成されたSQLを実行する前に、必ずスキーマでテストしてください。

はい。AIツールは、BETWEEN句が両方の境界値を含むこと、日付リテラルにはタイムスタンプが必要な場合があること、列のデータ型が比較結果に影響することなどを指摘できます。それぞれの説明を、実際のデータと列定義に基づいて確認してください。

はい。BETWEENは範囲を包含するため、x BETWEEN 200 AND 280は、値が200、280、またはその間の任意の値に一致する行に一致します。これは、x >= 200 AND x <= 280と記述するのと同等です。

各日付をシングルクォーテーションで囲みます。例: employment_date BETWEEN '2013-01-01' AND '2015-01-01'。タイムスタンプ列の場合は、上限を拡張するか、翌日の「<」を使用して、日中の遅い時間帯が除外されないようにしてください。