2017-12-21 16 views
1

私はこの質問に対する答えを見つけようとしています: 各サプライヤの都市について、最も多く提供されている製品を見つけますか?私は各製品の製品と数量と各都市は以下のコード出力を参照してください持っているSQL OLAP Cubeで異なる値を見つけようとしています

enter image description here

をここでは、クエリのコードです:

SELECT [Supplier City], [Product Name], [Total Transactions Quantity] 
FROM tb_final_cube 
WHERE "Supplier Name" IS NULL 
AND "Supplier City" IS NOT NULL 
AND "Supplier State" IS NOT NULL 
AND "Product Name" IS NOT NULL 
AND "Product Packaging" IS NOT NULL 
AND "Product Line" IS NULL 
AND "Product Category" IS NULL 

そして最後に、ここでは用のコードです私が使用しているキューブ:

SELECT DISTINCT s.name "Supplier Name", 
       s.city "Supplier City", 
       s.state "Supplier State", 

       p.name "Product Name", 
       p.product_category "Product Category", 
       p.product_line "Product Line", 
       p.product_packaging "Product Packaging", 

       SUM(Quantity) "Total Transaction Quantity", 
       SUM(Quantity * Price) "Total Sales Amount", 
       MAX(Price) "Maximum Price", 
       MIN(Price) "Minimum Price" 
     INTO tb_final_cube 
     FROM tb_supplier s, tb_product p tb_offers t 
     WHERE s.supp_id=t.supp_id 
     AND p.prod_id=t.prod_id 
     GROUP BY CUBE ((s.Name, s.City, s.State), (p.Name, p.Product_Category, p.Product_Line)), 
     ROLLUP (s.state, s.city, s.name), 
     ROLLUP (p.Product_Packaging, p.Name), 
     ROLLUP (p.Product_Category, p.Product_Line, p.Name) 
+1

コードは書面での書式ではなく、画像でお願いします。 – Lee

答えて

0

導出表1 => SELECT CITY、MAX(QTY) 派生表2 => S市町村、製品、数量 都市と数量の両方をリンクして、製品名を取得してください。

+0

この問題の文脈では、どのようにSelect文が見えますか? –

0
SELECT DT1.city, DT2.product, DT2.qty 
FROM (SELECT city, max(qty) as qty 
     FROM arunslocal.tb_final_cube 
     group by city) AS DT1, (SELECT city,qty, product 
           FROM arunslocal.tb_final_cube) AS DT2 
WHERE DT1.city = DT2.city AND DT1.qty = DT2.qty 
関連する問題