目录
①查询全体学生的姓名、性别和出生年份,并为查询结果的列标题设置合适的别名(查询经过计算的值,并为查询结果的列标题设置别名)
⑤查询课程学时是64或32的课程(表)详细信息(确定集合的条件查询)
⑥查询所有姓“王”的教师的姓名、性别和职称(字符匹配的条件查询)
⑨查询课程类型为“专业核心”的或者课程学时为32的课程信息(多重条件查询2)
⑩查询学生信息,要求查询结果按照学生性别升序排序,相同性别按照学生年龄降序排序
写在开头
本系列文章为本人学习 SQLServer 时的记录与分享,若有错误,恳请指出~
如果该文章对您有用,欢迎留下点赞 o ( ̄▽ ̄)d
要求
(1)掌握SELECT查询语句的一般格式
(2)掌握单表数据的基本检索方法
(3)加深对SQL和Transact-SQL语音的查询语句的理解
内容及步骤
单表查询
①查询全体学生的姓名、性别和出生年份,并为查询结果的列标题设置合适的别名(查询经过计算的值,并为查询结果的列标题设置别名)
SELECT stu_name 学生名, stu_sex 性别, 2023-stud_age 出生年份
FROM student;
②查询全体学生的姓名,如有重名只显示一次(查询结果去重)
SELECT DISTINCT stu_name
FROM student;
③查询课程表中前三门课程信息(注意是限制查询返回的行数)
SELECT TOP 3 *
FROM course;
④查询成绩在【90-100】的学生学号和课程编号
SELECT stud_id,course_id
FROM sc
WHERE grade between 90 and 100;
⑤查询课程学时是64或32的课程(表)详细信息(确定集合的条件查询)
注意:此处条件“或”,代码中用,表示
SELECT *
FROM sc
WHERE course_time IN('64','32');
⑥查询所有姓“王”的教师的姓名、性别和职称(字符匹配的条件查询)
注意:此处%是LIKE系列的通配符,意为匹配以"王"开头的任何字符串。
SELECT teach_name,teach_sex,teach_rank,
FROM teacher
WHERE teacher_name LIKE '王%';
⑦查询所有有选课成绩的学生学号和课程编号(排除空值查询)
SELECT stud_id,course_id
FROM student
WHERE grade IS NOT NULL;
⑧查询年龄大于并且等于19岁的男生信息(多重条件查询1)
注意:和条件用AND连接,或条件用OR连接
SELECT *
FROM student
WHERE stud_age >= 19 AND stud_sex = '男';
⑨查询课程类型为“专业核心”的或者课程学时为32的课程信息(多重条件查询2)
注意:和条件用AND连接,或条件用OR连接
SELECT *
FROM course
WHERE course_type ='专业核心' or course_hour = '32';
⑩查询学生信息,要求查询结果按照学生性别升序排序,相同性别按照学生年龄降序排序
SELECT *
FROM student
ORDER BY stud_age DESC;