数据库简单和复杂查询
- 格式:doc
- 大小:39.50 KB
- 文档页数:9
例5.1 部门的编号、名称和位置
select * from department //星号“*”可以在select子句中表示“所有的属性”
例5.2部门的编号、名称和位置
select dept_no,dept_name,location from department
例5.3 查询位于Dallas的部门编号和名称
select dept_no,dept_name
from department
WHERE location='Dallas'
例5.4 查询预算额的0.51倍大于60000的项目名称
SELECT project_name
FROM project
WHERE budget*0.51>60000
例5.5查询在部门编号为d1的部门工作且职员编号为25348或职工名称为‘Matthew’ 的雇员信息。
SELECT *
FROM employee
WHERE emp_no=25348 OR emp_fanme='Matthew'
AND dept_no='d1'
例5.6 查询不在部门编号为d1的部门工作的职员编号和姓名
SELECT emp_no,emp_lname
FROM employee
WHERE NOT dept_no='d1'
例5.7 获取编号既不是10102也不是9031的职员的所有列。
SELECT *
FROM employee
WHERE emp_no NOT IN (10102 ,9031)
例5.8 获取预算在$95 000~ $120 000之间的所有项目的名称和预算。
SELECT project_name,budget
FROM project
WHERE budget BETWEEN 95000 AND 120000
例5.9 获取预算小于$95 000和大于$120 000之间的所有项目的名称。
SELECT project_name
FROM project
WHERE budget NOT BETWEEN 95000 AND 120000
例5.10 获取为项目2工作的,具有未知工作的所有职员的职员编号和相应的项目编号。SELECT emp_no,project_no
FROM works_on
WHERE project_no=‘p2 AND job IS NULL
系统函数ISNULL允许在显示时用指定的数值来替代NULL
SELECT emp_no,ISNULL(job,’Job unknown task ’)
FROM works_on
WHERE project_no=‘p2 AND job IS NULL
例5.11 找出所有姓是以字母J开头的职员的名字和编号。
SELECT emp_fname,emp_lname,emp_no
WHERE emp_lname LIKE ‘j%’
例5.12 找出所有名中第二个字母是a的职员的名字和编号。
SELECT emp_fname,emp_lname,emp_no
FROM employee
WHERE emp_fname LIKE ‘_a%’
例5.13 获取所在地名从C到F的字母打头的所有部门的详细资料。
SELECT *
FROM DEPARTMENT
WHERE LOCATION LIKE ‘[C-F]%’
例5.14 获取姓的打头字母不是J,K,L,M,N,O,并且名的开头字母是E或者Z的所有职员的编号和名字。
SELECT *
FROM EMPLOYEE
WHERE EMP_LNAME LIKE '[^J-O]%' AND
emp_fname LIKE '[EZ]%'
例5.15所有被方括号括起来的通配符(%,_,[,],^)都表示本来的意思。
SELECT project_no,project_name
FROM project
WHERE project_NAME LIKE ‘%[_]%’
例5.16 获取在研究部门工作的所有职员的名和姓。
SELECT emp_fname,emp_lname
FROM employee
WHERE dept_no=
(SELECT dept_no
FROM DEPARTMENT
WHERE dept_name='research')
例5.17 获取职员moser参与的项目编号。
SELECT DISTINCT project_no
FROM works_on
WHERE emp_no=
(SELECT emp_no
FROM employee
WHERE emp_lname='moser' )
例5.18 获取部门位于Dallas的所有职员的详细信息。
SELECT *
FROM employee
WHERE dept_no in
(SELECT dept_no
FROM department
WHERE location='Dallas' )
例5.19 获取为'Apollo'项目工作的所有职员的姓。
SELECT emp_lname
FROM employee