数据库数据查询实验报告x
时间:2020-11-12 13:01:51 来源:勤学考试网 本文已影响 人
师学院数学与计算机科学学院
《数据库》实验报告
实验序号: 07
实验序号: 07
实验项目名称:数据查询
学 号 2014210758 姓 名 邹业安 专业、班级 14信科
实验地点 222 指导教师 褚万军
实验地点 222 指导教师 褚万军
时间
2017607
一、 实验目的及要求
?掌握从简单到复杂的各种数据查询。包括:单表查询、多表连接查 询、嵌套查询、集合查询。
?掌握用条件表达式表示检索条件。
?掌握用聚合函数计算统计检索结果。
二、 实验设备(环境)及要求
1、环境要求:
硬件:PC( PII以上,128M以上存)、因特网接入;
软件:在 SQL Server 2000 中
三、 实验容与步骤
1、一般简单查询
(1)不带条件的查询指定字段(考虑去掉和不去掉重复值两种情况) 。
select distinet 学号 from 选课
nltr;电,“佔匸亨号选測
OE?nNXM6(o?J7oo£20142107587
OE?nNXM6(o?J7oo£
2014210758
7
K
竝、.带
select 学号from 选课
I^Lqwrry Uql flvJ mlHlitri is-r M书m ■ Atiicc rr<? -ftiPI
2014210758
查询某个表中的所有记录 查询教师表中的所有记录
.代代gldEi和汕晞〔阿尸 □*lec& * £m 車;'帀
*
H
□"
—
-J Aft
〔?
dKCxzm:魅Mt蚁臨
RraLRIRIRB刚殛Rr
J Bh t J 痺
J 磚丹s < 册戈
2014210758
使用单个条件的简单查询 查询成绩大于50的学生的学号 select 学号from 选课
where 成绩 >50
fQkQuwyM* flfr JrwulUriWr <HJJ* Ml*at 学号 fisu g?r* jsy*>sc|
2D1421O708
使用多个条件(AN陕系)的查询
select 工资
from教师
where 工资 >200 and 工资 <500
SQLQutfyilql' (1d_tinHnittnt4r (54)) *
B-Mtacc IS
柳障
-工资 100 fcfid
□ *、皿
i non
3
2014210758i xooo
2014210758
1观Is
(5)使用多个条件(OF关系)的查询
select 工资
from教师
where 工资 <200 or 工资 >500
(6)使用多个条件(混合 AN丙OF关系)的查询
select * from 学生
where (院系='2' and 生源='')or (院系=6 and 生源='')
■ftjtj1
(7
(7)使用带
select * from
where not (
NO■运算的查询
学生
生源='')
x
x
■■1 豊旳 t f £M-"罕
not
1",nm
1
",
nm
£9
a?
1
J
女
*N
u
4
M
H
Aft
C4
1 J
m
■5
UK*
R
■M
2 It
C4
1 ?
m
C
R
■值
UH
il
607
H
马?曲
殺
m
■
R
SA
| ?
41Q
1$
童
IB
**
H
X
2014210758
使用 BETWEEN? ? AND? ? ?的查询 select * from 选课
where 成绩 between 86 and 93
使用 NOT? ? ? BETWEEN ? ? AND? ? ?的查询 select * from 选课
where 成绩 not between 76 and 93
r. * tm
uttm 舷塚 ma: □?二氓蠱t; 70
IAA1:養
IAA
1
:養i
01
IP
2
Off
?
3
m
30
4
g
塑
5
orl
M
?
g
SC
M
t
ta
n
2
am
30
DO
w
?c
Tl
fti
U
c?
20U21075&
使用LIKE运算符的字符串匹配查询。
select * from 课程
where 课程性质like ' 专业 '
迪LQuwyl抽l (ie_*?kflimter(U>r L neles'E ■ £rca 厲殍 I uMn 理眾tlJB liirt _*|
111*1* EfeSt
111*1
* EfeSt
2014210758
使用LIKE运算符的模板匹配查询。
select * from 院系
where 办公地点 like '4_1'
查询空值和非空值的
select * from 教师
where 工资 is null
屮广片叫冈u呵屮i iwJHninPHiatw ta 迂 3C1?C7 - fr-s 事呷
5畑工资1? fjlll
select * from 教师 where 工资 is not null
QH'iOl-iaPlSANaTjTwirf SQLQutryXiql -
L wiieire 工资 is no t null|
31.1| 122
3
1
.1
| 1
2
2
1
3
3
2
4
4
2
5
5
3
BW
G
6
5
7
7
4
8
8
4
二I ? -* l _.J AJfe
<tT工II直餐tt芸 咅用R闷回冃阿阿冋 希!*熬林畀歴;^怖瘴 匹豹助!■#助铀助曲鞋 煌翼黑宙电女奁衰女
工填 3fXW soo oa
200 oa
JQQ oa
Goooa worn
300 DO
2014210758
结果要求排序的查询
select * from 选课--升序 order by 成绩
^ss2014210758
^ss
2014210758
select * from 选课--降序 order by 成绩 desc
:二
:二Nh;
:~n * k "■-+-'
■* * *r * m w七
■
ooo
ON
oo
CM
?=>Oh
o n
■^o
■
OO 了
0 1
Oh
-?0
0
0.^-
&o
查询结果按多列排序,并分别要求升序和降序的查询。
select * from 选课
order by 学号,成绩
0 BT -BF
2014210758
select * from 选课 order by 学号, 成绩 desc
2014210768
使用TO显示前若干记录的查询
select top 3
select top 3 * from
学生
使用TO显示前若干记录的查询,如果有满足条件的并列记录一并显示 select top 3 * from 学生
where 生源=''
1407 19 AJN B T .nin^t^r dk>c i- 2 SQLQ U ?<yL.?C
LJ aelcer r&p 3 * rroir 学生
主序?台肥卜
n摘贰 J輩!ft
平t3阳!
平t3阳!
74
54
45
】|亟=[ 划潟血
0<J3 3 伺苏丹
009 8 罔亚伟
2QU21Q753
(17 )两个关系的连接查询。
select * from 学生 cross join 选课
2014210756
2014210756
ll'nwll:严4|'5?1如£||-袒护5沖趴福*呻?*
■ 2 ■:
*1111!川a?L珂
a 4H-bv- B ?_vh>- ■ ■■■■■■#■『
yKIMW1PU円KIMIFMI” ■ b * .杯畑
7:二二
FZKrl-L + L士 :
(18)带其他查询条件的两个关系的连接查询
select学生.学号,院系”性别,生源,课程编号,成绩
from 学生join 选课
on选课.学号=学生.学号
|? Ejubm
F寰加
tt-B
1
L眾
I
i'J ?4JJ
2
2
剤&婷
3
3
4
?
5
5
6
6
7
7
8
8
级H幅
9
1
W
2
1 1
3
何好丹
12
4
1」
5
14
£
障立楼
15
7
Miffl
1<
5
rrtTh
理D1Q2olOJ5M680102Q1024gaOJ 山 山
Ifr.iim靶 打?啊Kffl託刃诞化驗■" 乩呑商£六?谦旦疸M唯E六■柑If窃 113立衣H冃HR困冉致立H
(19 )多个关系(三个以上)的连接查询 select * from 学生,课程,选课 where 学生.学号=选课.学号
and 课程.课程编号=选课.课程编号
3g?l15
雯理nsc?凰ffia:真我勇
?<£ 世 at
竝
01 倬
D1 世 卅
01
a
' > 召ii基a
2 t
i < iltisi
1 I 鲁业点暫
i i tiLisi
? ? 导址堵常
1 s E IklM
1 I fiL-dK
1 ?皿2
?
' ? fifXM
I 奇她惨
i a 舌业蔓也
i t 书Jt胡
i t * iilU
; < idtdK
AIlcljK址如虻XK14药址乂KttnK 亦”竝ilttm赃{1伍111<0111掘 Mtillr常 职ffllg中血咗0血彌刪血加刪血#血曲
(20 )两个关系的广义笛卡尔积运算结果。
select * from 学生 cross join 选课
二I昭?.」艙
F5
KA
ttfil
1*
M■电
■
1
?1
]r
■匚
IW
D01
QI
ii
i
ttl
k
料V)
■
Mt
临
0
j
Q01
T
K
z*
VQ
Qi
3
4
0Q1
I
A
UM
4
*
ggi
1
fl
右《e
i*
(W
Ql
制
Ei
t
H
ae
i?
not
0
?
oai
t
?4M
Rie
co?
@1
1
ffli
|!
Aun
H
?K
g
卫
t
i
ttl
t
H4V)
?
诈
I*
册
tl
1U
m
f
rtwn
■
占e
正第
OSS
n
:
灯
CUI
T
対nr
mb
E?
UB
DI
1
u
g?i
f
J; *57
wae
£W
7?
2
0
4
u
期
I
絆t)
MS
址
K5
DI
<s
u
SOI
I
曲聊
n
eie
im
0
11
C01
t
ttJM
K?
M
Off?
DI
It
Mi
1
■
MR
£?
&M
3
11
1J
0
2
抽im
A
<n
wa>
DOI
Qi
1
1f
m
7
:rt
bra
0
J
If
m
1
w?
fH
伽
w?
刖
3
20
w
3
HI51W
:<R
w
IW
a
-
Z1
co?
2
松黑
JR
:<K
WflJ
8
QI
—E
―A—
w
*v
*1
(21 )根据两个关系的广义笛卡尔积运算结果得到两个关系进行自连接的结果
select e.学号,院系”性别,生源,课程编号,成绩 from 学生 e join 选课 w
on e.
学号=w.学号
_3 tAm
AIM
13
14
15
TG
rsH_" ] i
002 2
003 H
84 4
OCM 各
£ e
□07 言
□OuQ S 8? 1
CK>2 Z
003 3
OCM 址
005 b
OOC £
007 W
OO? 諭
0 0 0 0-00 0
(22)查询教师-
(22)
select ,职称,课程名称,课程性质
from 教师 inner join 课程
on教师.教师编号=课程.责任教师
称洋程名和煉稈■性质 斂按MDW 讲脯 助駛
RJjitt 讲帅
奇it捱甜 专如隆13 任
奇it捱甜 专如隆13 任童选傩 谨11蜓讷
帝盯透條 益社纂砒 査11蒸砒
查询教师-课程信息,查询结果中包括教师、职称、课程名称和课程性质等个字段,要求 结果中列岀所有教师信息(即包括不是任何课程责任教师的教师信息)
select ,职称,课程名称,课程性质
from 教师left joi n 课程
J; jft 即:匸C V SH T? 皐毒 r e* ■■t ILJ 1 .L m飘i
J; jft 即:匸
C V SH T? 皐毒 r e
* ■■
t ILJ 1 .
L m飘i』市* b〔碼塔
r住棚
E-tlJE
1
TH.
?UBC?
z
-SHE
专Ik谄齢
t
4
炸使
1
an
f
aim
r
侮冃
:-^K4
9
曲■
2014210758
查询教师-课程信息,查询结果中包括教师、职称、课程名称和课程性质等个字段,要求 结果中能够反映目前没有确定责任教师的课程信息。
select ,职称,课程名称,课程性质
from 教师 right join 课程
on教师.教师编号=课程.责任教师
查询教师-课程信息,查询结果中包括教师、职称、课程名称和课程性质等 4个字段,要求 结果中既能够反映目前不是责任教师的教师信息,又能反映目前没有确定责任教师的课程信息
select ,职称,课程名称,课程性质
from教师full join 课程
on课程.责任教师=教师.教师编号
qn -241407 AWAW .心 JM,fiQuQucryLbql (la^dmlnh cr*uir
Cron科馬乍3儿:Air.偲梓
Lon y*粮「養任斂礴■戦鱷L歆师蜡号
SS
SS
2014210758(
2014210758
(26)使用IN运算的简单嵌套查询。
select 教师.
from教师
where教师.教师编号in (
select 课程.责任教师
from课程
where课程性质='专业基础')
QH -20iao;lQANEJT.ma^ter dbojSil £QLQucrylLfql 書■社丄Mt玉文师.娃舍
XS9HI教怖
^here裁师.車划帀编号< select课*呈序任敕师 frsp1隸旌
谋無性居专业基础5
r氏販
r
氏販
汤cr
(27
(27)使用NOT IN运算的简单嵌套查询 select 教师.
from教师
where 教师.教师编号 not in ( select 课程.责任教师
from课程
where课程性质='专业基础')
QH -- dk>口还* 1-^LQk | 」r— J L- 5 ■] :H ||| "[;;
£ xr am 舌(? Ijifi
'-E?《 COP xn ¥
—A*Ct ”质 任 駅f 小P
Prarr i tp f
iJ|S埠坠性席—如业北础事?
■ 1
二1
;J出慈」
t |嘯祈] ? ◎楓
3 BRH
a A'JU
s (HTj^
(28)使用关系运算(如等于)的简单嵌套查询 select 教师.
from教师
where教师.教师编号=( select 课程.责任教师 from课程
where课程编号='02')
■Qi_Q?j?rylL &e| I cl<?—iKErja to>r t S-4 J J * t 3 ■■工菱殳U雨
M M QE手辺丿帀
uneice 扌勺U帀-事灯1」乔钢 P-* t
± H cm i¥-42
-灯4?1?* '审不早闿号 * Of?')
zn
n-R
1 [弊韓
(29)使用AN威SOM的简单嵌套查询
select
from教师
where 工资 >=any
(select 工资
from教师
where 教师编号=20118)
select * from 教师
蜉辂
0rH
2
eft
5 JW
町
7 佈
忡处号
tta
*lk
JJt
1
n
■
茁000
3
i
Rj
I- ■
]
7
囲
问工
n ■"
4
4
2
胃
R1
5
3
S*
U
观
30000
C
3
Jr
SOJW
7
7
I
St
SOI 00
t
4
■
袞
3?M
2014210753
(30) 使用ALL的简单嵌套查询。
select
from教师
where 工资 >=all
(select 工资
from教师
where 教师编号=20115)
i『李可i
註嗓
側更
床1S
白丽
S 丸曲
值丹
嗣
(31) 查询院系名称含“计科系”、职称为教授、所负责教程为专业基础的教师、职称、课程名 称和课程学时等信息(分别用嵌套查询和连接查询完成,分析各自的效率)
select ,课程名称,学时
from教师join 课程
on责任教师=教师编号join 院系
on院系.编号=教师.院系
where名称='计科系'and职称='教授'
(32) 设计两个外层互相关的嵌套查询。
select * from 教师
select教师编号”性别,职称,工资
from 教师 out
where 工资=
(select max( 工资)
from 教师 innera
where out.教师编号=inn era. 教师编号)
(33) 使用EXISTS的嵌套查询。
select *
from教师
where exists
(select *
from 课程
where课程.责任教师=教师.教师编号)
(34) 使用NOT EXISTS的嵌套查询。
select *
from教师
where not exists
(select *
from 课程
where课程.责任教师=教师.教师编号)
(35) 使用COUN统计数目的查询。
select * from 教师
select cou nt ( 工资)from 教师
(36) 使用SUM计算合计的查询。
select sum ( 工资)from 教师
QH-2G14O^ LSJAN Tr.^*丄年5* 槌 -JO14071^
Jf _1 总口 疋 HQ IB」 圭电
二鮭嗽丨
二鮭嗽丨二》納怛
匪判也
一次完成求和、计数、计算平均值的查询select * from 教师
一次完成求和、计数、计算平均值的查询
select * from 教师
compute sum( 工资),avg( 工资)
查询所有课程的成绩都大于 60分的学生的平均分最高的学生信息
select学号,avg(成绩)平均成绩
from 选课
where 成绩 >60 group by成绩,学号 order by 成绩 desc
SQLQM?ryl- Oo-.-ElrTilinlstratar <34))~
l j 土?uc f . <* ■ :~0 *與--j■勺护总#携 “心hrt请i乍
MX* t* 斤E 爭奇■'?'Ed
9Z--OUP toy 国号^号
D ! df- 1- 13V h女兰费 Mer曰
m i 狮氨l
igcH zpzkm卯画
1 ['008 '' BO
工 - 加
1^720U21075B
1^7
20U21075B
查询数据库课程的成绩大于 70分的、所有课程平均分最高的学生信息 select top (1) * from 学生 where 学号 in (select 学号from 选课join 课程
on选课.课程编号=课程.课程编号
where 成绩>70 and课程名称='数据库')
S* <to_- .dmlnlK-fcrAlLor f NJ)#?
[]■ ■ ■ ■ q h ■ L > ■ iEr<e?m 卑亡勺三 z?*?=■ 曲芒号 Ji
(■?鼻■&匚 岂氏弓 希石曰珂iJt i5|l 了匚:=□ i甲芜十
厶伍 jatim
Wil ■?■? 应猶f 谭侶容称■,玻un咗彳
.二i 3 -□抽恵」_
T峠 P再吊 幅独 'H恥’占1+ 认寺 屮HlrtU柄
2014210758
(40)查询每个学生的平均成绩。
select 学号,avg(成绩)as平均成绩
from 选课
group by 学号
(41 )查询每个学生的所有成绩的最高成绩、最低成绩、平均成绩和所考课程的门数。
select学号,count (*)'所选课程数',max(成绩)’最高成绩’,avg(成绩)’平均成绩’,min (成绩) 最低成绩’
from 选课
group by 学号
(42)查询至少有1门必修课程考试成绩的每个学生的平均成绩。
select avg (成绩)
from 选课
where课程编号in
(select 课程编号from 课程 where课程性质like %基础')
group by 学号
n n. ■
EWHilW ■ raz
>o
3 M
*
2014210759
(43)设计1个使用COMPUTE? ? BY和COMPUTE查询。
select * from 选课order by学号 compute avg(成绩),sum(成绩)by 学号
设计1个使用COMPUTE查询。
select * from 教师 compute sum( 工资)[3 HO4 <M>■QlLQu?ry> *c|ft <1
设计1个使用COMPUTE查询。
select * from 教师 compute sum( 工资)
[3 HO4 <M>
■QlLQu?ry> *c|ft <1 n . . dfriiim r J * 4~iTW 帀
| J oanKpu -t<■> wmiM I *
rl34?c?B
性■nmy'.' 二 wHaE 旳和-l*"ll*.cl'lrjv舟
2014210753
设计个使用group? ? ? BY的查询 select 教师编号,avg(工资) from教师 group by 教师编号
K-QiLQu *ry 1... aqV 直|1<?_ 一> ■
LI 騒 M - ■?* 亠 g、
K Er adn 裁亍〒帀
q
」th弾
1
I i ] wo oo>aaw
z
34X7 WQ4WV
3
a
OMD?
4
4
*0(9 CMMMXK
孚
4
3OQCI0OOQO
t
iRAAfHA^
T
*
■hOM CKXXWCI
B
?
3HDC OOOOOd
2014210758
四、分析与讨论
实验过程中出现了很多的错误,但经过自己的不懈努力都解决的了, 也正是 通过这次的实验学到了很多。
五、教师评语
1 ?按时完成实验;
实验容和实验过程记录完整;
回答问题完整、正确;
有关于实验的比较深刻的心得或讨论;
实验报告的撰写认真、报告格式符合要求。
签名:
日期: 年 月 日
成绩