- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL习题集
数据库拆表原则
简单字段中的复合字段:解决方法:向上打通,或拆成两表
完全依赖:知道a就能知道b,返过来就不一定.实现:将同一个主题的东西放在一起
无传递依赖。将传递依赖转为直接依赖。原因:减少插入冗余。减少增删异常。
当出现一对多时不能横拆,一定拆成两个表,特别的固定范围可以横拆(签到管理)
多对多必有中间表
代码表,大量重复的或枚举型可以用代码表.
能计算的字段不要
数据定义语句DDL
create alter drop
数据控制语句DCL
grant deny revoke
数据操纵语句DML
select update insert delete
一.SQL Server 2000
Select 变化集锦
查询所有字段(效率低)
查询所有的老师
select *
from dbo.教师
2.字段枚举
查询教师的ID,及姓名两项
select 教师_ID,教师名
from dbo.教师
3.字段取别名方法有二
1)as可以省略
select 教师名 as teacher
from dbo.教师
2)
select teacher = 教师名
from dbo.教师
4.字段的可计算性
1) 简单字段计算
教师工资的10%
select 工资*0.1
from dbo.教师
2)把一个检索结果作为查询字段
本学校的师生比例
select
(
select count(*)
from dbo.教师
)
/1.0/
(
select count(*)
from dbo.学生
)
5?取取select
(
case
when 性别_ID=1 then 男
when 性别_ID=2 then 女
end
)
from dbo.教师
横向查询男女人数
select
sum(
case
when 性别_ID=1 then 1
else 0
end
) as nan
,
sum(
case
when 性别_ID=2 then 1
else 0
end
) as nv
from dbo.教师
10 可以重复列出表的的字段
select *,*,*
from 教师
11 检索结果放常量
select 教师名, 出生于,出生日期
from dbo.教师
-----------------------------------
From变化集锦
1.从一个表中检索
select *
from dbo.教师
2 从一个检索结果中再检索即从临时表中检索
select *
from
(
select 教师_ID, 教师名, 出生日期, 系_ID, 性别_ID, 职称_ID
from dbo.教师
)lin –sqlserver2000中临时表通常要起别名
where lin.教师_ID 4
3.从多表中检索,构成迪卡尔乘积(效率低)
select dbo.教师.*,系名
from dbo.教师,dbo.系
where dbo.教师.系_ID=dbo.系.系_ID
4 多表的联接查询
1)左连接(尊重左边)
select *
from dbo.系 left join dbo.教师
on dbo.系.系_ID=dbo.教师.系_ID
2)右连接(尊重右边)
select *
from dbo.系 right join dbo.教师
on dbo.系.系_ID=dbo.教师.系_ID
3)内连接(都不尊重,即两边都得有)下例为两个以上表的连接写法
select *
from dbo.系 inner join dbo.教师
on dbo.系.系_ID=dbo.教师.系_ID inner join dbo.教师认课
on dbo.教师.教师_ID=dbo.教师认课.教师_ID
4)全连接(都尊重)
select *
from dbo.系 full join dbo.教师
on dbo.系.系_ID=dbo.教师.系_ID
5. 给被检索表起别名 注意:起了别名就一定用别名引用字段
错误的
select dbo.教师.教师名
from dbo.教师 js
正确的
select js.教师名
from dbo.教师 js
where集锦
常规关系运算 、 =、 、 =、 !=、 、 =
select 教师_ID
from dbo.教师
where 教师_ID1
只检索表结构不要任何数据
Select *
From dbo.教师
Where 1!=1
常规逻辑运算 not 、and 、or
select 教师_ID
from dbo.教师
where not( 教师_ID=1 and 教师_ID=8 )
3.区间
您可能关注的文档
- SQL sever-初.doc
- sql sever模拟试卷.doc
- SQL S应用大全 书的目录.doc
- SQl 笔试题.doc
- SQL 函数大全.doc
- sql 课设.doc
- SQL 期末总结.doc
- sql 双机热备.doc
- SQL 语言使用手册.doc
- SQL_Plus_Copy命令.doc
- 浙江衢州市卫生健康委员会衢州市直公立医院高层次紧缺人才招聘11人笔试模拟试题参考答案详解.docx
- 浙江温州泰顺县退役军人事务局招聘编外工作人员笔试备考题库及参考答案详解一套.docx
- 江苏靖江市数据局公开招聘编外工作人员笔试模拟试题及参考答案详解.docx
- 广东茂名市公安局电白分局招聘警务辅助人员40人笔试模拟试题带答案详解.docx
- 江苏盐城市大丰区住房和城乡建设局招聘劳务派遣工作人员4人笔试模拟试题带答案详解.docx
- 浙江舟山岱山县东沙镇人民政府招聘笔试模拟试题及参考答案详解1套.docx
- 最高人民检察院直属事业单位2025年度公开招聘工作人员笔试模拟试题含答案详解.docx
- 浙江金华市委宣传部、中共金华市委网信办所属事业单位选调工作人员笔试备考题库及答案详解1套.docx
- 广东深圳市党建组织员招聘40人笔试模拟试题及答案详解1套.docx
- 江苏南京水利科学研究院招聘非在编工作人员4人笔试模拟试题及参考答案详解.docx
文档评论(0)