我正在尝试建立一个子查询

时间:2019-06-16 00:51:48

标签: sql

我正在尝试查看如何编写子查询。我有一张叫供应商的桌子。这些字段是Supplierid,名称,ordervalue和orderid。我需要编写一个查询,该查询将生成所有订单价值大于1000000的供应商超过10次的商品。

select name, count(*)
from (select orderid from supplier where ordervalue >1000000 group by 
orderid) 
where count(*) > 10
group by name;

1 个答案:

答案 0 :(得分:1)

ANSI编写此查询的方式,该方式应可在大多数RDBMS中使用(至少在SQL Server和Oracle中):

SELECT name, COUNT(orderid)
FROM   supplier 
WHERE  ordervalue > 1000000
GROUP  BY name
HAVING COUNT(orderid) > 10;