当前位置:首页 > 我的数据库实验指导书2005
实 验3
实验项目名称 sql 数据查询(2课时,综合) 实验主要内容及方法 数据的各种查询方法 实验要求:
(5) 掌握查询语句的一般格式。;
(6) 掌握无条件、有条件查询及查询结果排序与分组。 实验目的:熟练掌握查询语句的使用。 实验设备:装有SQL SERVER 2005的电脑 实验步骤:
(1) 启动SSMS;
(2) 选择SQL SERVER后,按确认; (7) 选择数据库; (8) 综合练习如下例题:
1 无条件查询
例3.11 查询全体学生的详细记录。这是一个无条件的选择查询,其命令为:
SELECT * /*这里的“*”等价于ALL*/
FROM Students;
其结果为表3.3中的全部数据。
13
例3.12 查询全体学生的姓名(Sname)、学号(Sno)、所在系(Sdept)。这是一个无条件的投影查询,其命令为: SELECT Sname, Sno, Sdept FROM Students;
例3.13 查询全体学生的姓名(Sname)、出生年份及学号(Sno)。由于SELECT子句的<目标列表达式>不仅可以是表中的属性列,也可以是表达式,故可以查询经过计算的值。其命令为:
SELECT Sno, Sname, 2001-Sage FROM Students;
例3.14 查询全体学生的姓名、出生年份和学号,要求用小写字母表示学号中的字母。其命令为:
SELECT Sname, ’Birth:’ Title, 1996-Sage BirthYear, LOWER(Sno) Lsno FROM Students;
例3.15 查询选修了课程的学生学号。其命令为: SELECT DISTINCT Sno FROM Reports; 2 条件查询
例3.16 查询数学系全体学生的学号(Sno)和姓名 (Sname)。其命令为: SELECT Sno, Sname
14
FROM Students WHERE Sdept='数学';
例3.17 查询所有年龄在18~22岁(包括18岁和22岁)之间的学生姓名(Sname)及年龄(Sage)。其命令为: SELECT Sname, Sage FROM Students
WHERE Sage?=18 AND Sage<=22;
例3.18 查询年龄在18~22岁(包括18岁和22岁)之间的学生姓名(Sname)及年龄(Sage)。其命令为: SELECT Sname, Sage FROM Students
WHERE Sage BETWEEN 18 AND 22;
例3.19 查询年龄不在18-22岁之间的学生姓名(Sname)及年龄(Sage)。其命令为: SELECT Sname, Sage FROM Students
WHERE Sage NOT BETWEEN 18 AND 22; 例3.20 查询自动化系、数学和计算机系学生的学号(Sno)、姓名(Sname)和性别(Ssex)。其命令为: SELECT Sno, Sname, Ssex FROM Students
WHERE Sdept IN ('自动化', '数学', '计算机');
15
等价于:SELECT Sname, Ssex
FROM Students
WHERE Sdept='自动化' OR Sdept='数学' OR
Sdept='计算机';
例3.21 查询既不是信息系、数学系、也不是计算机系的学生的姓名(Sname)和性别(Ssex)。其命令为: SELECT Sname, Ssex FROM Students
WHERE Sdept NOT IN ('自动化', '数学', '计算机'); 例3.22 查询所有姓刘的学生的姓名(Sname)、学号(Sno)和性别(Ssex)。其命令为: SELECT Sname, Sno, Ssex FROM Students
WHERE Sname LIKE '刘%';
例3.23 查询姓“刘”且全名为4个汉字的学生的姓名(Sname)和所在系(Sdept)。其命令为: SELECT Sname, Sdept FROM Students
WHERE Sname LIKE '刘____';
例3.24 查询所有不姓刘的学生姓名(Sname)和年龄(Sage)。
SELECT Sname, Sage
16
共分享92篇相关文档