我正在将我的 Delphi 应用程序从 MySQL 移动到 SQL Server 2012。在 MySQL 中,我有这个查询:
SELECT *,(XS+S+M+L+XL+XXL+[1Size]+Custom) as Total FROM StockData
GROUP BY StyleNr,Customer,Color
ORDER BY StyleNr,Customer,Color
它工作得很好。但在 Microsoft SQL Server 2012 中,这个查询说
消息 8120,级别 16,状态 1,行 1
列“StockData.ID”在选择列表中无效,因为它不包含在聚合函数或 GROUP BY 子句中。
如果我将查询更改为:
SELECT *,([XS]+[S]+[M]+[L]+[XL]+[XXL]+[1Size]+[Custom]) total
FROM [dbo].[stockdata]
GROUP BY ID,StyleNr,Customer,Color
ORDER BY StyleNr,Customer,Color
然后我得到这个错误:
消息 8120,级别 16,状态 1,行 1
列 'dbo.stockdata.XS' 在选择列表中无效,因为它不包含在聚合函数或 GROUP BY 子句中。
有任何想法吗?
这是表的设计视图: