[英]Incorrect syntax near the keyword 'GROUP' - MA
我正在嘗試將所有庫存移動都放入2015年或2016年的時段。 在我的查詢的“從選擇”部分中,我可以使用它,但是它為每個項目提供了2行,第一行的數量為2015年,2016年為0,第二行的2015年為0,2016年為數量。 因此,我認為我可以查詢select語句並進行分組以獲得每個項目一行。 但是我收到“關鍵字'GROUP'附近的語法不正確”錯誤。 有人能讓我朝着正確的方向前進嗎? 該錯誤發生在From子句之外的第二個Group By上。 謝謝。
SELECT [Item]
,[Item Desc]
,sum[2015 Usage]
,sum[2016 Usage]
FROM (SELECT
mtm.[item] 'Item'
,im.[description] 'Item Desc'
,case when year(convert(varchar(10), convert(date,mtm.[trans_date],1),101))='2015' then sum(mtm.[qty]) else 0 end '2015 Usage'
,case when year(convert(varchar(10), convert(date,mtm.[trans_date],1),101))='2016' then sum(mtm.[qty]) else 0 end '2016 Usage'
FROM [ITEC_App].[dbo].[matltran_mst] mtm, [ITEC_App].[dbo].[item_mst] im
WHERE
mtm.[item] = im.[item]
and
mtm.[trans_type] NOT IN ('A', 'B', 'C', 'F', 'G', 'H', 'M', 'N', 'R')
and
mtm.[ref_type] NOT IN ('P')
GROUP BY
mtm.[item]
,im.[description]
,year(convert(varchar(10), convert(date,mtm.[trans_date],1),101)))
GROUP BY
[Item]
,[Item Desc]
您的子查詢如下:
(
SELECT . . .
GROUP BY
mtm.[item]
,im.[description]
,year(convert(varchar(10), convert(date,mtm.[trans_date],1),101))
)
在SQL Server中,所有子查詢都需要一個表別名。 因此,您只需要添加一個:
(
SELECT . . .
GROUP BY
mtm.[item]
,im.[description]
,year(convert(varchar(10), convert(date,mtm.[trans_date],1),101))
) i
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.