引用自here:
“在下面的查询中,我们选择购买价格大于每个产品线中所有产品的平均购买价格的产品。
SELECT
productname,
buyprice
FROM
products p1
WHERE
buyprice > (SELECT
AVG(buyprice)
FROM
products
WHERE
productline = p1.productline)
"
您可以在编辑器here中找到可执行代码。如果我只是省略
WHERE
子句,结果似乎是一样的,只是最后两行没有出现在输出结果中。WHERE
子句的左右两边在这里具体做什么,即它们每次得到什么值,如何进行比较等等? 最佳答案
此查询返回的产品名称的buyprice大于同一生产线上所有产品的buyprice平均值。
SELECT
productname,
buyprice
FROM
products p1
WHERE
buyprice > (
SELECT AVG(buyprice) --return the average buyprice of all products
FROM products
WHERE productline = p1.productline -- same productline
)
关于mysql - MySQL- WHERE子句在相关子查询中的作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46953542/