1

1 つに結合したい 2 つのクエリがあります。基本的に、2 つのクエリを 1 つの出力テーブルに入れたいと考えています...出力は次のようになります...</p>

 
ストア GC 販売台数

1 22 75

2 24 88

3 15 89

問題は、それを同じテーブルに入れる方法がわからないことです。

これが私のクエリです…</p>

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

この出力は次のとおりです。

店舗番号 GC 販売済み

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;

出力:

店舗数 総台数

1 7

2 8

3 9

これとは別に、クエリは設計どおりに機能します。ただし、それらを結合しようとすると、それらは 2 つの異なる集計関数であるため、機能しません。

4

1 に答える 1

6
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;
于 2012-04-23T02:20:10.067 に答える