at backyard

Color my life with the chaos of trouble.

先週の間に作成されたユーザ情報を取得するSQL(MySQL)

書き方を調べた感じ、ぱっと日本語の情報が出てこなかったので、こちらにメモ。

なお、ここで書いている先週というのは、日曜日から土曜日のことになる。 今日を例にすると、今日は 11/6 なので、下記のSQLを流した場合 10/27 00:00:00 ~ 11/2 23:59:59 の間に作成されたユーザ情報を取得することができる。

SELECT
  *
FROM
  users
WHERE `createdAt` >= DATE_SUB(DATE(NOW()), INTERVAL DAYOFWEEK(NOW())+6 DAY)
  AND `createdAt` <  DATE_SUB(DATE(NOW()), INTERVAL DAYOFWEEK(NOW())-1 DAY);