週次での集計コード(月曜始まり)
ver
は'yyyy-mm-dd'
の文字列想定です
group by
date_add('day', -(6 + day_of_week(cast(ver as date)))%7, cast(ver as date))
やってること
day_of_week(timestamp)
が日付を入れると月~日を1~7とする曜日番号で返してくれるのでそれを利用しています。
コード内で6としている部分を変えれば好きな曜日起点での週次集計ができるかと思います。
prestoでの週次集計を調べるとweek()
をによる週番号での方法が出てくるのですが、それだと1年以上の集計ができないためこの方法を使っています。
やり方自体はMySQL日毎、周毎、月毎集計のものをpresto式に書き換えただけです(ありがとうございます)