2021011203
1.查询全体学生的姓名、出生年份和所在系。
2、查询选修了课程的学生学号。
SELECT DISTINCT sno FROM scfcy WHERE cno IS NOT NULL;
distinct去除重复的
从名为scfcy的数据库表中,按照sno字段进行分组,然后返回每个组的第一个记录的sno值:
3、查询计算机系年龄在20岁以下的学生的学号和姓名。
SELECT
sno,sname
FROM
studentfcy
WHERE
sdept = 'CS'
AND
sage < 20;
4、查询年龄不在20-23岁之间的女生的学号、姓名、系别和年龄。
SELECT
sno,sname,sdept,sage
FROM
studentfcy
WHERE
ssex='女' and sage not BETWEEN 20 AND 30;
使用单引号 '女'
5.查询数学系和计算机系学生的学号、姓名和性别。要求:用谓词IN
SELECT sno,sname, ssex
FROM studentfcy
WHERE sdept in ('CS','MA') ;
6、查询姓张和姓刘的学生的学号和姓名。
SELECT sno,sname FROM studentfcy WHERE sname LIKE '张%' or sname LIKE '刘%'
7、求成绩在80-90 之间的学生学号和成绩,并将成绩乘以系数0.75 输出 。
select sno,grade*0.8 '成绩' from scfcy where grade>80 and grade<90
8、查询没有先修课且学分高于1分的课程号
select cno from coursefcy where cpno is NULL AND ccredit>1
SQL 条件判断 中 ,is 和 =(等号)的 区别 在 SQL 进行条件判断的时候,等号表示的是数值上的等价,比如par_id = 0 is 更多表示的是一种属性。
9、求选修1号课程的学生学号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同则按学号的升序排列。
SELECT sno,grade from scfcy where cno="1" order by grade desc,sno asc
更新数据:
UPDATE scfcy SET grade=55 WHERE grade=101