【发布时间】:2020-10-13 17:41:46
【问题描述】:
create table students(id int,
name varchar(20),
dept varchar(10),
salary int default 10000
);
Insert into students values(1,'Ram','HR',10000);
Insert into students values(2,'Amrit','Mrkt',20000);
Insert into students values(3,'Ravi','HR',30000);
Insert into students values(4,'Raju','finance',40000);
我的导师告诉我的问题:
select name from employee where dept in(select dept from emp group by dept having count(*)<2);
他告诉我们应该只使用已经在group by中使用的select语句的属性,其他属性不能使用。
但以下查询也有效:
select name from employee group by dept having count(*)<2;
我的查询是对还是错?如果正确,将其用作嵌套查询比简单查询有什么优势?
【问题讨论】:
标签: mysql sql select insert having