MySQLのソース文についてのご相談
table1
-----------------------
Date,PageTitle,Pageviews
-----------------------
2020/10/1,A,1
2020/10/2,A,1
2020/10/3,A,1
2020/10/4,A,1
2020/10/5,A,1
2020/10/6,A,1
2020/10/7,A,1
2020/10/8,A,1
2020/10/9,A,1
2020/10/10,A,1
2020/10/2,B,1
2020/10/3,B,1
2020/10/4,B,1
2020/10/5,B,1
2020/10/6,B,1
-----------------------
・実現したいこと
PageTitleごとにDateの最小値から7日以内のPageviewsを合計して以下のように出力したい
↓
-----------------------
Date(MIN),PageTitle,SUM(Pageviews)
-----------------------
2020/10/1,A,7
2020/10/2,B,5
-----------------------
これを実現するためにはどのようなSQL文を記述すれば可能でしょうか?
お分かりになる方、ご教授よろしくお願いいたします。
0
Best Answer
-
@tokupon さん
こんな感じで実現できるかと思います。
select a.`mindate` , a.`PageTitle` , sum(b.`Pageviews`) as `Pageviews` from ( select -- PageTitle毎の最小日を取得 min(`Date`) as mindate , `PageTitle` from `table1` group by `PageTitle` ) a left join `table1` b on a.`PageTitle` = b.`PageTitle` and b.`Date` < date_add(a.`mindate`, interval 7 day) -- 最小日の7日以内の条件で結合 group by a.`mindate` , a.`PageTitle`
1
Answers
-
ご回答ありがとうございます。
こちらの内容で実現できました。
助かります。1
Categories
- 10.8K All Categories
- 3 Private Company Board
- 1 APAC User Group
- 12 Welcome
- 39 Domo News
- 9.7K Using Domo
- 1.9K Dataflows
- 2.5K Card Building
- 2.2K Ideas Exchange
- 1.2K Connectors
- 343 Workbench
- 260 Domo Best Practices
- 11 Domo Certification
- 466 Domo Developer
- 50 Domo Everywhere
- 106 Apps
- 717 New to Domo
- 85 Dojo
- Domopalooza
- 1.1K 日本支部
- 4 道場-日本支部へようこそ
- 27 お知らせ
- 64 Kowaza
- 299 仲間に相談
- 654 ひらめき共有