2012-04-23 16 views
1

私は2つのクエリを1つにまとめたいと思います。基本的に私は2つのクエリは一つの出力テーブルになりたい...出力は次のようになります...複数のクエリを組み合わせて異なる場所句

 
Store  GC Sold    Total Cars 

1    22     75 

2    24     88 

3    15     89 

問題は、私は同じテーブルでそれを取得する方法を見つけ出すことができないです。ここで

は私のクエリです

SELECT  Store_Number, COUNT_BIG(Quantity_Sold) AS GC Sold 
FROM   Invoice_Detail_Tb 
WHERE  (Invoice_Date BETWEEN CONVERT(DATETIME, @startdate, 102) AND CONVERT(DATETIME, @enddate, 102)) AND (JLI_Category_Code = 'gc') 
         AND (Invoice_Detail_Code LIKE 'jlgc%') AND (Invoice_Detail_Type = 'Item') 
GROUP BY Store_Number 

この出力がある...:

 
Store Number  GC Sold 

1     12 

2     13 

3     14 
SELECT Store_Number, 
     SUM(Vehicle_Count) AS [Total_Cars] 
FROM  Daily_Sales_Tb 
WHERE (Operations_Day BETWEEN CONVERT (DATETIME, @startdate, 102) AND CONVERT (DATETIME, @enddate, 102)) 
GROUP BY Store_Number; 

出力:

 
Store Number  Total Cars 

1      7 

2      8 

3      9 

別に設計されたとして、クエリが動作します。しかし、私がそれらを結合しようとすると、2つの異なる集約関数になるので、うまくいきません。

答えて

4
SELECT A.Store_Number,A.GC_Sold,B.Total_Cars 
FROM 
(
SELECT  Store_Number, COUNT_BIG(Quantity_Sold) AS GC_Sold 
FROM   Invoice_Detail_Tb 
WHERE  (Invoice_Date BETWEEN CONVERT(DATETIME, @startdate, 102) AND CONVERT(DATETIME, @enddate, 102)) AND (JLI_Category_Code = 'gc') 
         AND (Invoice_Detail_Code LIKE 'jlgc%') AND (Invoice_Detail_Type = 'Item') 
GROUP BY Store_Number 
) A, 
(
SELECT Store_Number, 
     SUM(Vehicle_Count) AS [Total_Cars] 
FROM  Daily_Sales_Tb 
WHERE (Operations_Day BETWEEN CONVERT (DATETIME, @startdate, 102) AND CONVERT (DATETIME, @enddate, 102)) 
GROUP BY Store_Number 
) B 
WHERE A.Store_Number=B.Store_Number; 
+0

パーフェクト!ありがとう! – Shmewnix

+0

ウル歓迎の男... – Teja

+0

Plsが投票して答えを受け入れる.. – Teja

関連する問題