不洗脸都帅~

2020-07-08   阅读量: 711

Mysql

分享几个有意思的SQL题

扫码加入数据分析学习群

1. 用一条sql 语句 查询出每门课都大于80 分的学生姓名

name course grade

张三 语文 81

张三 数学 75

李四 语文 76

李四 数学 90

王五 语文 81

王五 数学 100

王五 英语 90


2、一个叫 team 的表,里面只有一个字段name, 一共有4 条纪录,分别是a,b,c,d, 对应四个球对,现在四个球对进行比赛,用一条sql 语句显示所有可能的比赛组合



3、怎么把这样一个数据表

year month amount

1991 1 1.1

1991 2 1.2

1991 3 1.3

1991 4 1.4

1992 1 2.1

1992 2 2.2

1992 3 2.3

1992 4 2.4

查询得到这样一个结果?

Year m1 m2 m3 m4

1991 1.1 1.2 1.3 1.4

1992 2.1 2.2 2.3 2.4



答案:

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

⬇⬇

第一题:

select name

from table

group by name

having min(grade) > 80;

第二题:

select * from team;

select * from team 球队1

left join team 球队2

on 球队1.name<>球队2.name;

第三题:

select year,

(select amount from test m where month = 1 and test.year = m.year) as m1,

(select amount from test m where month = 2 and test.year = m.year) as m2,

(select amount from test m where month = 3 and test.year = m.year) as m3,

(select amount from test m where month = 4 and test.year = m.year) as m4

from test

group by year;


21.2235 3 4 关注作者 收藏

评论(0)


暂无数据

推荐课程