だれかのなにかに役立てるウェブ制作者YoTaの趣味ブログ

スプレッドシートのクエリでwhereの日付ソートする方法

最近、Googleスプレッドシートの超絶便利なQUERY関数を使って、where句の日付ソートを作ってみたので、ソースコードのサンプルと一緒に紹介したいと思います。


QUERY関数のwhere句で日付ソートする方法

ソースコードの紹介

さっさとコピペして使いたい人が多いと思いますので、まずはソースコードから紹介します。

=QUERY( 
  'データシート'!$A:$C,
  "select A,B,C
  where A<= DATE '"&text($E$1,"YYYY-MM-DD")&"'
    and A>= DATE '"&text($E$2,"YYYY-MM-DD")&"'
  ")

解説すると、

・シートは2つ存在。
 ⇒「データシート」というシートと、上記クエリが埋め込まれているシートの2点
・「データシート」のA~C列がクエリのデータ群
・クエリの埋め込まれたシートのセルE1,E2には「2023-01-08」といった形式の日付データ
・クエリ結果はセルE2~E1の日付範囲でソートされて「データシート」のA~Cが出力される

って感じです。

並び替え/limitかけてソート

さらに、desc順に並び変えたり、特定数だけソートしたい場合はlimitで上限をかけたりもできます。

=QUERY( 
  'シート名'!$A:$C,
  "select A,B,C
  where A<= DATE '"&text($E$1,"YYYY-MM-DD")&"'
    and A>= DATE '"&text($E$2,"YYYY-MM-DD")&"'
  order by desc
  limit "&$B$6&"
  ")
YoTa アイコン

スプシのクエリは、データの形式というか、記述の方法さえわかってしまえばカンタンなもんです。

ページ上部に戻る