8个sql题

这篇博客提供了一组SQL题目,涵盖了基础查询、JOIN操作、子查询、聚合函数、分组以及复杂的逻辑判断。通过这些题目,读者可以加深对SQL语言的理解,包括查询每个部门年龄最大和第二大的员工,以及门派平均年龄和成员数量等场景。
摘要由CSDN通过智能技术生成

CREATE TABLE mytbl2(id INT primary key,NAME VARCHAR(16),age INT,dept INT);

INSERT INTO mytbl2 VALUES(1,‘zhang3’,33,101);
INSERT INTO mytbl2 VALUES(2,‘li4’,34,101);
INSERT INTO mytbl2 VALUES(3,‘wang5’,34,102);
INSERT INTO mytbl2 VALUES(4,‘zhao6’,34,102);
INSERT INTO mytbl2 VALUES(5,‘tian7’,36,102);

#查询每个部门年龄最大的人(错误的逻辑,name不对)
select name,max(age)
from mytbl2
group by dept

1.查询每个部分最大年龄
2查询人
正确的语句:
SELECT m.* FROM mytbl2 m INNER JOIN(SELECT dept,MAX(age) maxage FROM mytbl2 GROUP BY dept) AS ab
ON ab.dept=m.dept AND m.age=ab.maxage

8个sql题

CREATE TABLE t_dept (
id INT(11) NOT NULL AUTO_INCREMENT,
deptName VARCHAR(30) DEFAULT NULL,
address VARCHAR(40) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

CREATE TABLE t_emp (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(20) DEFAULT NULL,
age INT(3) DEFAULT NULL,
deptId INT(11) DEFAULT NULL,
empno INT NOT NULL,
PRIMARY KEY (id),
KEY idx_dept_id (deptId)
#CONSTRAINT fk_dept_id FOREIGN KEY (deptId) REFERENCES t_dept (id)
) ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

INSERT INTO t_dept(id,deptName,address) VALUES(1,‘华山’,‘华山’);
INSERT INTO t_dept(id,deptName,address) VALUES(2,‘丐帮’,‘洛阳’);
INSERT INTO t_dept(id,deptName,address) VALUES(3,‘峨眉’,‘峨眉山’);
INSERT INTO t_dept(id,deptName,address) VALUES(4,‘武当’,‘武当山’);
INSERT INTO t_dept(id,deptName,address) VALUES(5,‘明教’,‘光明顶

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值