当前位置:Gxlcms > 数据库问题 > 数据库中sql语句复习

数据库中sql语句复习

时间:2021-07-01 10:21:17 帮助过:3人阅读

/*
表T中某属性(xx)重复出现N次的所以记录。
eg:表A 中 姓名重复出现3次以上的所以记录。
思路:先找出超过了3次的姓名有哪些,再把这些姓名的记录提取出来。
*/
select * from A where name in (
select name form A group by name having count(name)>3 
)


/*
查询A表中第n至m条记录
eg:查询A(ID,Name)表中第31至40条记录
*/
mysql ::  Select * from A limit 30,10;  ( mysql 中的limit )
//找出前30的id ,再找出不在这30里面的前10条
select top 10 * from A  where id not in (select top 30 id from A))

学生信息表s(sno,sname,age,sex) 学号,姓名,年龄 和性别
选课信息表sc(sno,cno,  scgrade ) 学号,课程号,成绩
课程信息表c(cno,cname,ct) 课程号,课程名,授课老师
同时选修了课程名为“1”和“2”的学生的学号和姓名
//分析:课程名可以对应出唯一的课程号,学生号对应出唯一的学生信息,最后把关系都集中到sc中来
select sno  ,sname from s where sno  in(
 select sc.sno from  sc,c where sc.cno=c.cno and cname in(‘1‘ ,‘2‘) group by sno count(distinct cno)=2);


数据库中sql语句复习

标签:

人气教程排行