您好,欢迎来到百家汽车网。
搜索
您的当前位置:首页MySQl基本查询语句练习

MySQl基本查询语句练习

来源:百家汽车网


六、select语句练习

简单语句查询

1. select * from students; ------显示表中的所有内容

2. select Name,Age from students; ------显示students表中的Name和Age列

3. select distict Gender from students; ------相同的内容只显示一次

选择students表中年龄大于20的同学(以下三种方式):

4. select * from students where Age>=20;

5. select Name,Age from students where Age>=20;

6. select Name,Age from students where Age+1>20;

查找年龄大于20的同学并且按降序排列:

7. select Name,Age from students where Age>20 order by Age desc;

年龄大于等于20并且是男性的同学:

8. select Name from students where Age>20 and Gender='M';

年龄不大于20的同学:

9. select Name,Age,Gender from students where not Age>20;

小于等于20的女同学:

10. select Name,Age,Gender from students where not (Age>20 or Gender=‘M’);

年龄在(21-24)之间的同学(以下两种方式):

11. select Name,Age from students where Age>20 and Age<25;

12. select Name,Age from students where Age between 20 and 25;

显示以Y开头的名称(这里限定了姓名的长度)(\"_\"表示任意单个字符):

13. select Name from students where Name like 'Y___';

显示以Y开头的姓名:

14. select Name from students where Name like 'Y%';

名称中含有ing的名称(“%”表示任意长度的任意字符):

15. select Name from students where Name like '%ing%';

显示以M或N或Y开头的名字(支持正则表达式):

16. select Name from students where Name rlike '^[MNY].*$';

显示年龄是18、20、25的同学:

17. select Name from students where Age IN (18,20,25);

显示挑选课程号(CID1)为空的同学:

18. select Name from students where CID1 is null;

把查询后的结果进行降序排序(ASC升序,desc降序)

19. select Name,CID1 from students where CID1 is not null order by CID1 desc;

显示查询的Name表头名变为name

20. select Name AS Student_Name from students;

隔两行数据向后取三行数据:

21. select Name from students limit 2,3;

所有同学的平均年龄:

22. select AVG(age) from students;

显示年龄最大的同学:

23. select MAX(age) from students;

显示年龄最小的同学:

24. select MIN(age) from students;

显示所有同学的年龄总和:

25. select SUM(age) from students;

显示所有同学的个数:

26. select count(age) from students;

显示所有男同学的平均年龄:

27. select AVG(age) from students where Gender=’M‘;

显示所有女同学的平均年龄:

28. select AVG(age) from students where Gender=’F‘;

显示男女同学的平均年龄:

29. select Gender,avg(age) from students group by Gender;

显示选修CID1的同学

30. select count(CID1) AS Persons,CID1 from students group by CID1;

显示选修人数大于2的课程:

31. select count(CID1) AS Persons,CID1 from students group by CID1 having Persons>=2;

七、多表查询

每位同学及其他所学习的课程名称(以下四种方式)

1. select students.Name,courses.Cname from students,courses where students.CID1=courses.CID;

2. select students.Name,courses.Cname from students,courses where students.CID1=courses.CID;

3. select s.Name,c.Cname from students AS s left jion courses AS c on s.CID1=c.CID;(左连接)

4. select s.Name,c.Cname from students AS s right jion courses AS c on s.CID1=c.CID;(右连接)

显示各个同学与他相对应的导师:

5. select c.Name as student,s.Name as teacher from students as s,students as c where s.SID=c.TID;

显示每一位老师及其所教授的课程;没有教授的课程保持为NULL:

6. select t.Tname,c.Cname from tutors as t left join courses as c on t.TID=c.TID;

显示每一个课程及其相关的老师,没有老师教授的课程将其老师显示为空:

7. select t.Tname,c.Cname from tutors as t right jion courses as c on t.TID=c.TID;

显示每位同学CID1课程的课程名及其讲授了相关课程的老师的名称:

8. select Name,Cname,Tname from students,courses,tutors where students.CID1=courses.CID and courses.TID=tutors.TID;

查看同学的成绩及姓名,并且按升序排列:

9. select students.Name,scores.Score from students,scores where students.SI

D=scores.SID order by scores.Score desc;

八、子查询

挑选出courses表中没有被students中的CID2学习的课程的课程名称:

1. select Cname from courses where CID not IN (select CID2 from students where CID2 is not null);

挑选出没有教授任何课程的老师,每个老师及其所教授课程的对应关系在courses表中:

2. select Tname from tutors where TID not in (select distinct TID from courses);

找出students表中CID1有两个或两个以上同学学习了的同一个门课程的课程名称:

3. select Cname from courses where CID in (select CID1 from students group by CID1having count(CID1) >=2);

年龄大于平均年龄的同学:(使用子查询时,子查询只能返回单个值):

4. select Name,Age from students where Age > (select avg(age) from students);

查询学生和老师各自的年龄并写在一个表中:

5. (select Name,Age from students) union (select Tname,Age from tutors);

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baijiahaobaidu.com 版权所有 湘ICP备2023023988号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务