SELECT COUNT(*) FROM ( SELECT org_no, COUNT(*) AS cnt FROM your_table GROUP BY org_no HAVING SUM(DI_SUM > 15) ) t
时间: 2024-05-20 18:13:05 浏览: 142
这是一个 SQL 查询语句,用于统计一个表中满足条件的记录数。具体来说,这个语句会按照 org_no 字段进行分组,统计每个分组中 DI_SUM 大于 15 的记录数,然后筛选出满足条件的分组,最后返回满足条件的分组数目。
如果你想执行这个查询语句,需要将其中的 "your_table" 替换成你要查询的表名。
相关问题
本题目要求编写SQL语句, 检索出orders表中销售了两单及以上的员工编号,订单数量,订单总价。 提示:请使用SELECT语句作答。 表结构: : CREATE TABLE `orders` ( `OrdNo` int(11), --订单编号 `Sid` varchar(10), --供应商编号 `Eid` varchar(10), --职工编号 `Pid` varchar(20), --商品编号 `Price` decimal(10,2), --价格 `QTY` int(11), --订购数量 `ordDate` date --订单日期 ); 表样例 orders表: OrdNo Sid Eid Pid Price QTY ordDate 1 S01 0011 P01 11 23 2022-02-13 2 S02 0012 P01 12 25 2022-02-14 3 S03 0012 P03 60 55 2022-02-14 输出样例: Eid cnt sum_QTY_mul_Price 0012 2 3600.00
SELECT Eid, COUNT(DISTINCT OrdNo) AS cnt, SUM(QTY*Price) AS sum_QTY_mul_Price
FROM orders
GROUP BY Eid
HAVING COUNT(DISTINCT OrdNo) >= 2;
数据库中having后面接的条件
HAVING语句用于对GROUP BY语句产生的结果进行筛选,只保留满足条件的记录。HAVING语句的基本语法如下:
```
SELECT column1, column2, ...
FROM table_name
WHERE condition
GROUP BY column1, column2, ...
HAVING condition
```
其中HAVING关键字后面可以跟多个条件,这些条件使用AND或OR连接。这些条件可以是聚合函数、常量、字段、运算符或表达式等。例如:
```
SELECT b_id, COUNT(*) AS cnt
FROM deposite
GROUP BY b_id
HAVING COUNT(*) > 5 AND SUM(d_amount) > 10000
```
这个查询语句会统计每个银行的存款记录数量,然后筛选出存款记录数量大于5并且总存款金额大于10000元的银行。在这个查询语句中,HAVING条件由两个聚合函数COUNT和SUM组成,它们分别统计记录数量和总存款金额,并将它们与常量5和10000进行比较。
阅读全文