Sql基础代码第二章数据查询Word文档下载推荐.docx

上传人:b****4 文档编号:18453711 上传时间:2022-12-16 格式:DOCX 页数:13 大小:159.42KB
下载 相关 举报
Sql基础代码第二章数据查询Word文档下载推荐.docx_第1页
第1页 / 共13页
Sql基础代码第二章数据查询Word文档下载推荐.docx_第2页
第2页 / 共13页
Sql基础代码第二章数据查询Word文档下载推荐.docx_第3页
第3页 / 共13页
Sql基础代码第二章数据查询Word文档下载推荐.docx_第4页
第4页 / 共13页
Sql基础代码第二章数据查询Word文档下载推荐.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

Sql基础代码第二章数据查询Word文档下载推荐.docx

《Sql基础代码第二章数据查询Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Sql基础代码第二章数据查询Word文档下载推荐.docx(13页珍藏版)》请在冰豆网上搜索。

Sql基础代码第二章数据查询Word文档下载推荐.docx

3.1.5聚合函数24

第四章变量25

4.1局部变量26

4.2全局变量27

第五章循环语句27

5.1统计平均成绩27

5.2提分27

5.3根据成绩显示等级27

第六章存储过程27

6.1存储过程的应用27

6.1.1系统存储过程27

6.1.2Sp_helptext的使用27

6.1.3创建存储过程27

6.2raiserror语句的应用27

第七章exists子查询27

7.1exists子查询的应用27

7.2求银行利息27

7.3变量查询27

7.4查询考试通过情况27

7.5循环提分27

7.6通过率27

第八章事物27

8.1使用事物解决银行转账27

第九章触发器27

9.1检测触发器27

9.2创建触发器27

9.3触发器delete运用27

9.4触发器update运用27

9.5触发器禁止修改运用27

第二章数据查询

2.1建表和插入数据

2.1.1建立学生信息表

usemaster—使用master系统数据库

ifexists(select*fromsysdatabaseswherename='

studb'

dropdatabasestudb—检测是否有studb数据库,有则删除

createdatabasestudb

usestudb—使用studb数据库

createtableclass—创建课程表

(cnochar(10)primarykey,--课程号

cnamechar(50)notnull,--课程名

teanochar(10)notnull,--教师号

creditchar(4)notnull,

ctimechar(50)notnull)

createtablestudent1—创建学生信息表

(snochar(10)primarykey,--学号

snamechar(10)notnull,--姓名

ssexchar

(2)notnull,--性别

sagechar

(2)notnull,--年龄

majorchar(10)notnull,--专业

dapartchar(10)notnull)–系别

createtableteacher1

(teanochar(10)primarykey,

tnamechar(10)notnull,--教师名

tsexchar

(2)notnull,--教师性别

tdepartchar(10)notnull)–教授课程

createtablescore—创建成绩表

(snochar(10)notnull,

cnochar(10)notnull,

scoreintnotnull)–成绩

 

2.1.2插入信息

--插入单条信息

insertintostudent1

values('

0811080101'

'

陈琦'

男'

'

22'

信息'

工商'

--插入多条信息

insertintostudent1—在student1表中插入信息

select'

0811080102'

崔雪娇'

女'

23'

union

0811080103'

董朝阳'

数学教育'

数学系'

0811080104'

杜鹃'

计算机应用'

计算机系'

0811080105'

方卉'

20'

汉语言'

文法系'

insertintoclass—在class表中插入信息

0301'

财务管理'

001'

2'

24'

union

0302'

供应链管理'

002'

2.2'

18'

0303'

'

生产与运作管理'

003'

2.4'

36'

0304'

统计学'

004'

2.6'

32'

0305'

网页制作'

005'

2.8'

30'

0306'

操作系统原理'

006'

3.0'

union

0307'

数据库原理'

007'

3.2'

0308'

项目管理'

008'

3.4'

45'

0309'

web程序设计'

009'

3.5'

35'

insertintoscore—在score表中插入信息

select0811080101,0306,85union

select0811080101,0303,90union

select0811080101,0305,86union

select0811080102,0306,82union

select0811080102,0304,84union

select0811080102,0301,81union

select0811080103,0306,93union

select0811080103,0302,79union

select0811080103,0304,85union

select0811080104,0306,94union

select0811080104,0308,74union

select0811080104,0307,86

insertintoteacher1—在teacher1表中插入信息

select001,'

卢亚君'

财经'

select002,'

李昌明'

select003,'

张富强'

select004,'

刘翠杰'

数信'

select005,'

王庆石'

select006,'

黄立明'

select007,'

王纲'

计算机'

select008,'

徐伟丽'

select009,'

刘书霞'

2.2查询运用

2.2.1数据查询

--查询课程表信息

select*fromclass

--查询学生表信息

select*fromstudent1

--查询教师表信息

select*fromteacher1

--查询成绩表信息

select*fromscore

2.2.2单表查询

--

(1)查询sno为0811080101学生的sname

selectsname

fromstudent1

wheresno='

--

(2)查询ssex为’女’并且sdepart为’工商’的sname

wheressex='

anddapart='

--(3)查询所有学生的姓名和系别。

selectsnameas姓名,dapartas系别—as后的中文是别名,可以在查询结果中将别名前的名字替换成别名后的名字。

--(4)查询depart为数学系的sname。

wheredapart='

--(5)查询所有学生所在院系名称

selectdistinctdapart—distinct是去掉重复值

--(6)查询学生信息表中年龄小于和年龄大于的学生的姓名和系别

selectsname,dapart

wheresage<

21orsage>

21

--(7)查询所有学生的平均年龄

selectavg(sage)as平均成绩

2.2.3连接查询

--用where语句来进行两表联接

selects.sname,o,c.score

fromstudent1ass,scoreasc

wheres.sno=c.sno

--用where语句来进行多表联接

selectstudent1.sno,student1.sname,

o,ame,score.score,teacher1.tname

fromstudent1,class,score,teacher1

wherestudent1.sno=score.sno

ando=o

andclass.teano=teacher1.teano

--内联接,用innerjoin内联接将stuinfo表和stumarks表联接起来

fromscoreasc

innerjoinstudent1assonc.sno=s.sno

--用innerjoin内联接来进行三表联接

selects.sname,ame,sc.score

fromstudent1ass

innerjoinscoreasscon(s.sno=sc.sno)

innerjoinclassascon(o=o)

--左外连接leftjoinon,主键在左边

selects.sname,sc.score

leftjoinscoreassc

ons.sno=sc.sno

--左外连接leftjoinon三表联接

leftjoinscoreassc

on(s.sno=sc.sno)

leftjoinclassasc

on(o=o)

--右外连接rightjoinon,主键在右边

fromscoreassc

rightjoinstudent1ass

--右外连接rightjoinon三表联接

rightjoinstudent1ass

--显示奇数行的学生信息

select*fromstudent1

wheresno%2<

>

--显示偶数行的学生信息

wheresno%2=0

2.2.4操作结果集查询

selectcno课程号

fromscore

intersect

2.2.5嵌套查询

--查询选修了这门课的所有学生的学号、姓名、年龄、院系

selectsno,sname,sage,dapart

wheresnoin(selectsnofromclasswherecno='

2.3数据库更新

--A.插入数据

--向Student1表中添加一项记录:

--姓名:

叶问,学号:

,性别:

男,年龄:

专业:

信息管理,系别:

工商

0811080201'

叶问'

信息管理'

--B.修改数据

--修改陈琦的学号为:

updatestudent1

setsno='

081108023'

wheresname='

--C.删除数据

--删除所有工商学生的记录

deletestudent1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1