Microsoft示例中sql中的相关子查询
我发现一个例子说:Microsoft示例中sql中的相关子查询,sql,sql-server,Sql,Sql Server,我发现一个例子说: 此示例查找最大标价超过模型平均值两倍的产品模型 sql代码为: SELECT p1.ProductModelID FROM Production.Product AS p1 GROUP BY p1.ProductModelID HAVING MAX(p1.ListPrice) >= ALL (SELECT AVG(p2.ListPrice) FROM Production.Product AS p2 WHERE p1.ProductModel
此示例查找最大标价超过模型平均值两倍的产品模型 sql代码为:
SELECT p1.ProductModelID
FROM Production.Product AS p1
GROUP BY p1.ProductModelID
HAVING MAX(p1.ListPrice) >= ALL
(SELECT AVG(p2.ListPrice)
FROM Production.Product AS p2
WHERE p1.ProductModelID = p2.ProductModelID);
我不知道这是怎么实现的。有人能帮我吗?特别是这两个词是从哪里来的?你能举出你在哪里找到这个例子吗?好的,谷歌搜索一下。看起来像是复制粘贴错误。示例包括
2*
,这将导致“平均值的两倍”。该版本(可能是您正在查找的位置)不包含2的乘法,但保留相同的描述。仍然不确定为什么需要ALL
,因为子查询将只返回一个值-其中没有groupby
。您的问题是什么?您能举出在哪里找到此示例吗?好的,谷歌搜索了一下。看起来像是复制粘贴错误。示例包括2*
,这将导致“平均值的两倍”。该版本(可能是您正在查看的地方)不包含2的乘法,但保留相同的描述。仍然不确定为什么需要ALL
,因为子查询将只返回一个值-其中没有group by
。您的问题是什么?