Mar*_*tin 2 sql presto amazon-athena
我对 SQL 查询相当陌生,并且正在查询 aws athena 数据库。
我的第一个查询将返回给定一些参数的每个独特品牌:
-- query1
SELECT DISTINCT brand
FROM "database"
WHERE product_gap = 'yes' AND store_name = 'petco'
Run Code Online (Sandbox Code Playgroud)
返回这样的列表:
# brand
1 Drs. Doink and Foink
2 Zkukit!
3 Willow
4 Freshz
5 Aquatic Land
6 UniLaws
7 Seraz
.....
Run Code Online (Sandbox Code Playgroud)
依此类推 553 行。如果我选择任何品牌,例如“Seraz”并运行第二个查询,它将返回该品牌的“merch1”列的不同计数
-- query2
SELECT COUNT (DISTINCT merch1)
FROM "database"
WHERE product_gap = 'yes' AND store_name = 'petco' AND brand='Seraz'
Run Code Online (Sandbox Code Playgroud)
返回:
# _col0
1 2
Run Code Online (Sandbox Code Playgroud)
其中 _col0 是 seraz 的 merch1 的不同计数。
我的问题是如何组合我的查询,以便对于来自 query1 的每个唯一品牌结果,它都会运行 query2,并在表中显示唯一的 merch1 计数,如下所示:
# brand merch1_distinct_count
1 Drs. Doink and Foink 2
2 Zkukit! 1
3 Willow 1
4 Freshz 1
5 Aquatic Land 1
6 UniLaws 3
7 Seraz 2
.....
Run Code Online (Sandbox Code Playgroud)
使用group by
与brand column
SELECT brand, COUNT(DISTINCT merch1) merch1_distinct_count
FROM "database"
WHERE product_gap = 'yes' AND store_name = 'petco'
group by brand
Run Code Online (Sandbox Code Playgroud)