GoogleスプレッドシートのQUERYで日付条件を付けるときは、クエリ文字列にdate 'YYYY-MM-DD'形式のリテラルを入れることが要点です。シートに表示される2026/11/02をそのままSQL風の条件へ置いても、日付型の比較になりません。
QUERY内の日付リテラルの形式
A列が日付、B列が取引先、C列が金額の一覧を前提とします。A列は日付型、先頭行は見出し、検索範囲はA1:C100とします。日付に時刻が含まれる場合は「11月2日の全件」をどう判定するか別に決めます。表示形式だけ変更しても、文字列の日付を日付型へ変換できるとは限りません。
セルの日付を文字列に変えて条件へ埋め込む
固定条件なら=QUERY(A1:C100,"select A,B,C where A >= date '2026-11-01' and A < date '2026-12-01'",1)です。開始日をE1に置くなら=QUERY(A1:C100,"select A,B,C where A >= date '"&TEXT(E1,"yyyy-mm-dd")&"'",1)のように文字列を組み立てます。日付リテラルはシングルクォートで囲み、QUERY全体の文字列はダブルクォートで囲みます。
日付型と時刻付き値の差を検査
11月1日、11月30日、12月1日の3行を用意し、11月だけ抽出されるか確認します。時刻付き列を扱う場合はdateで比較してよい型なのか、datetimeを使うべきかを確認してください。終了日を含めたい場合は、翌日の0時より前という半開区間の考え方が使えます。
期間の境界日を取りこぼさない検算
日付がテキストの列へQUERYを使う場合、列に混在する型が少数派としてNULL扱いされることがあります。まず補助列で日付へ正規化し、無効な文字列行を分離してから集計します。クエリ結果0件は必ずしも対象データがない意味ではなく、条件文字列やデータ型のずれも疑ってください。
