建立四个表,其结构和记录如下:
仓库表:仓库号。
wh1wh2wh3wh4
职工表:仓库号。
wh2wh1wh2wh3wh1
城市。北京。
上海。广州。
武汉。职工号。e1e3
e4e6e7面积。
工资。订购单表:职工号。
**商号。订购单号。
订购日期。e3
s7or67
20010623e1
s4or73
20010728e7
s4or76
20010525e6
nullor77e3s4
or7920010613e1
nullor80
e3null
or90e3
s3or91
**商表:**商号。
**商名。地址。
s3振华电子厂。西安。s4
华电子公司。北京。s6
607厂。郑州。
s7爱华电子厂。
北京。对四个表(仓库表,职工表,订购单表,**商表)进行查询操作。
1简单查询。
例1从职工关系中检索所有工资值。
select工资from职工表。
例2检索仓库关系中的所有元组。
select * from仓库表。
select仓库号,城市,面积from仓库表。
例3检索工资多于1230元的职工号。
select职工号from职工表where工资》1230例4检索哪些仓库有工资多于1210元的职工。
select仓库号from职工表where工资》1210
例5给出在仓库“whl”或“wh2”工作,并且工资少于1250元的职工号。
select职工号from职工表where (仓库号=’wh1’.or.仓库号=’wh2’).and.工资<250
2简单的联接查询。
例6找出工资多于1230元的职工号和他们所在的城市。
select职工号,城市。
from职工表,仓库表where工资》1230 .and.职工表。仓库号=仓库表。仓库号。
例7找出工作在面积大于400的仓库的职工号以及这些职工工作所在的城市。
select职工号,城市。
from职工表,仓库表where面积》400 .and.职工表。仓库号=仓库表。仓库号。
3嵌套查询。
例8哪些城市至少有一个仓库的职工工资为1250元?select城市from仓库表where仓库号in (select仓库号。
from职工表where工资=1250)select城市(‘wh1’,’wh2’)
select城市from仓库表,职工表where仓库表。仓库号=职工表。仓库号where职工表。工资=1250)例9查询所有职工的工资都多于1210元的仓库的信息。
select * from仓库表where仓库号not in (select仓库号from职工表where工资<=1210)例10找出和职工e4挣同样工资的所有职工。
select职工号from职工表where工资=(select工资from职工表where职工号=’e4’)
4几个特殊运算符。
betweenand和like
例11检索出工资在1220元到1240元范围内的职工信息。
select * from职工表where工资》=工资<=1240select * from职工表where工资between 1220 and 1240
例12从**商关系中检索出全部公司的信息,不要工厂或其他**商的信息。
from仓库表。
where仓库号。
inselect * from**商表where**商名。
like ‘%公司’
例13找出不在北京的全部**商信息。
select * from**商表where地址!=’北京’
5排序。例14按职工的工资值升序检索出全部职工信息。
select * from职工表order by工资。
select * from职工表order by工资desc例15先按仓库号排序,再按工资排序并输出全部职工信息。
select * from职工表order by仓库号,工资。
6简单的计算查询。
count计数。
sum求和。
**g计算平均值。
max求最大值。
min求最小值。
例16找出**商所在地的数目。
select count(distinct地址) from**商表。
select count(*)from**商表。
例17求支付的工资总数。
select sum(工资) from职工表。
例18求北京和上海的仓库职工的工资总和。
select sum(工资) from职工表where仓库号in (select仓库号from仓库表where城市=’北京’.or.城市=’上海’)例19求所有职工的工资都多于1210元的仓库的平均面积。
select**g(面积)from仓库表。
where仓库号。
notin(select仓库号from职工表where工资<=1210)
例20求在wh2仓库工作的职工的最高工资值。
select max(工资)from职工表where仓库号=’wh2’
7分组与计算查询。
例21求每个仓库的职工的平均工资。
select仓库号,**g(工资) from职工表group by仓库号。
例22求至少有两个职工的每个仓库的平均工资。
select仓库号, count(*)**g(工资) from职工表group by仓库号h**ing count(*)2
8利用空值查询。
例23找出尚未确定**商的订购单。
select * from订购单表where**商号is nullselect * from订购单表where**商号=’null’
例24列出已经确定了**商的订购单信息。
select * from订购单表where**商号is not nullselect * from订购单表where**商号!=’null’
10使用量词和谓词的查询。
例25检索那些仓库中还没有职工的仓库的信息。
select * from仓库表where not exists (select * from职工表where仓库号=仓库表。仓库号)例26检索那些仓库中至少已经有一个职工的仓库的信息。
select * from仓库表where exists (select * from职工表。
where仓库号=仓库表。仓库号)select*from仓库表where仓库号in (select仓库号from职工表)例27检索有职工的工资大于或等于whl仓库中任何一名职工工资的仓库号。
selectdistinct仓库号。
from职工表。
where工资》=any(select工资from职工表where仓库号=’wh1’)
select distinct仓库号from职工表where工资》= selectmin(工资) from职工表where仓库号=’wh1’)
例28检索有职工的工资大于或等于whl仓库中所有职工工资的仓库号。
selectdistinct仓库号。
from职工表。
where工资》=all(select工资from职工表where仓库号=’wh1’)
select distinct仓库号from职工表where工资》= selectmax(工资)from职工表where仓库号=’wh1’)
11集合的并运算。
例29检索。
城市为北京和上海的仓库信息:
select * from仓库表where城市=’北京’.or.城市=’上海’
select * from仓库表where城市=’北京’union select *from仓库表where城市=’上海’
AccessXP操作答案 SQL命令
access 2000操作答案 sql命令。模拟题一 2 用sql语句对mark表创建更新查询gx,如果笔试成绩和上机成绩均不低于60分,则在 是否合格 字段填入 合格 字样。update mark set 是否合格 合格 where 笔试成绩 60 and 上机成绩 60 3 用sql语句对mar...
作业SQL语句操作
作业 语句操作。题目 完成下面要求的 语句。1 查询所有雇员的信息。2 查询雇员的编号,职称信息 3 查询所有雇员的姓名信息 4 查询雇员的所有头衔。5 查询雇员的出生日期和薪水。6 按出生时间对雇员排序 order by 7 列出所有销售经理 sales m 的编号。8 列出1969年以后出生的雇...
09操作答案
page 1 20092009操作卷参 操作卷参 20092009操作卷参 操作卷参 一 一 根据合同审根据合同审证,证,指出不符之处并提出修改意见指出不符之处并提出修改意见 共 共 3636分 分 一一 根据合同审根据合同审证证,指出不符之处并提出修改意见指出不符之处并提出修改意见 共共 3636...