/
query76.sql
24 lines (21 loc) · 1.2 KB
/
query76.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
select channel, col_name, d_year, d_qoy, i_category, COUNT(*) sales_cnt, SUM(ext_sales_price) sales_amt FROM (
SELECT 'store' as channel, 'ss_addr_sk' col_name, d_year, d_qoy, i_category, ss_ext_sales_price ext_sales_price
FROM store_sales, item, date_dim
WHERE ss_addr_sk IS NULL
AND store_sales.ss_sold_date_sk=date_dim.d_date_sk
AND store_sales.ss_item_sk=item.i_item_sk
UNION ALL
SELECT 'web' as channel, 'ws_web_page_sk' col_name, d_year, d_qoy, i_category, ws_ext_sales_price ext_sales_price
FROM web_sales, item, date_dim
WHERE ws_web_page_sk IS NULL
AND web_sales.ws_sold_date_sk=date_dim.d_date_sk
AND web_sales.ws_item_sk=item.i_item_sk
UNION ALL
SELECT 'catalog' as channel, 'cs_warehouse_sk' col_name, d_year, d_qoy, i_category, cs_ext_sales_price ext_sales_price
FROM catalog_sales, item, date_dim
WHERE cs_warehouse_sk IS NULL
AND catalog_sales.cs_sold_date_sk=date_dim.d_date_sk
AND catalog_sales.cs_item_sk=item.i_item_sk) foo
GROUP BY channel, col_name, d_year, d_qoy, i_category
ORDER BY channel, col_name, d_year, d_qoy, i_category
limit 100;