创建查询来获取我的货在我的数据库如下图所示SQL服务器 - 选择在另外一个选择了错误
SELECT
Goods.GoodsID ,Max(Price)
ExistNumber AS ExistNumber ,
(SELECT p.ValueText
FROM STR.GoodsProperties gp
INNER JOIN PRP.Properties p ON p.PropertyID = gp.PropertyID
WHERE NodeText LIKE '/40/%'
AND gp.GoodsID = Goods.GoodsID) AS Color
FROM
STR.Goods
GROUP BY
Goods.GoodsID, ExistNumber;
该查询拿到货与他们existnumber
货物的颜色属性, 现在当我运行此查询我得到这个错误:
Msg 512, Level 16, State 1, Line 13
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
此错误是由于在某些货物造成有两个Color
,我想获得两行此产品
为什么GROUP BY没有使用聚合函数?为什么不是简单的SELECT DISTINCT呢? – jarlh