第三节 查 询 (1)(2)(3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)
3. 查询经过计算的值
SELECT子句的<目标列表达式>为表达式:算术表达式;字符串常量;函数;列别名等。
[例4] 查全体学生的姓名及其出生年份。
SELECT Sname,2000-Sage
FROM Student;
输出结果:
Sname 2000-Sage
--------- -------------
李勇 1976
刘晨 1977
王名 1978
张立 1978
[例5] 查询全体学生的姓名、出生年份和所有系,要求用小写字母表示所有系名。
SELECT Sname,'Year of Birth: ',2000-Sage,ISLOWER(Sdept) FROM Student;
输出结果:
Sname 'Year of Birth:' 2000-Sage ISLOWER(Sdept)
------- ---------------- --------- --------------
李勇 Year of Birth: 1976 cs
刘晨 Year of Birth: 1977 is
王名 Year of Birth: 1978 ma
张立 Year of Birth: 1977 is
[例5.1] 使用列别名改变查询结果的列标题
SELECT Sname NAME,'Year of Birth: ’ BIRTH,2000-Sage BIRTHDAY,ISLOWER(Sdept) DEPARTMENT
FROM Student;
输出结果:
NAME BIRTH BIRTHDAY DEPARTMENT
------- ---------------- ------------- ------------------
李勇 Year of Birth: 1976 cs
刘晨 Year of Birth: 1977 is
王名 Year of Birth: 1978 ma
张立 Year of Birth: 1977 is
二、选择表中的若干元组——消除取值重复的行;查询满足条件的元组。
1. 消除取值重复的行,在SELECT子句中使用DISTINCT短语。
假设SC表中有下列数据
Sno Cno Grade
------- ------- -------
95001 1 92
95001 2 85
95001 3 88
95002 2 90
95002 3 80
ALL 与 DISTINCT
[例6] 查询选修了课程的学生学号。
(1) SELECT Sno
FROM SC;
或(默认 ALL)
SELECT ALL Sno
FROM SC;
结果: Sno
-------
95001
95001
95001
95002
95002
|