版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑第第页数据库常用语句一、基础
1、说明:创建数据库
createdatabasedatabase-name
2、说明:删除数据库
dropdatabasedbname
3、说明:备份sqlserver
创建备份数据的device
usemaster
execsp_addumpdevice'disk','testback','c:\mssql7backup\mynwind_1.dat'
开始备份
backupdatabasepubstotestback
4、说明:创建新表
createtabletabname(col1type1[notnull][primarykey],col2type2[notnull],..)
根据已有的表创建新表:
a:createtabletab_newliketab_old(使用旧表创建新表)
b:createtabletab_newasselectcol1,col2…fromtab_olddefinitiononly
5、说明:删除新表
droptabletabname
6、说明:增加一个列
altertabletabnameaddcolumncoltype
注:列增加后将不能删除。db2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:添加主键:altertabletabnameaddprimarykey(col)
说明:删除主键:altertabletabnamedropprimarykey(col)
8、说明:创建索引:create[unique]indexidxnameontabname(col….)删除索引:dropindexidxname
注:索引是不可更改的,想更改必须删除重新建。
9、说明:创建视图:createviewviewnameasselectstatement
删除视图:dropviewviewname
10、说明:几个简单的基本的sql语句
选择:select*fromtable1where范围
插入:insertintotable1(field1,field2)values(value1,value2)
删除:deletefromtable1where范围
更新:updatetable1setfield1=value1where范围
查找:select*fromtable1wherefield1like’%value1%’like的语法很精妙,查资料!
排序:select*fromtable1orderbyfield1,field2[desc]
总数:selectcountastotalcountfromtable1
求和:selectsum(field1)assumvaluefromtable1
平均:selectavg(field1)asavgvaluefromtable1
最大:selectmax(field1)asmaxvaluefromtable1
最小:selectmin(field1)asminvaluefromtable1
11、说明:几个高级查询运算词
a:union运算符
union运算符通过组合其他两个结果表(例如table1和table2)并消去表中任何重复行而派生出一个结果表。当all随union一起使用时(即unionall),不消除重复行。两种情况下,派生表的每一行不是来自table1就是来自table2。
b:except运算符
except运算符通过包括所有在table1中但不在table2中的行并消除所有重复行而派生出一个结果表。当all随except一起使用时(exceptall),不消除重复行。
c:intersect运算符
intersect运算符通过只包括table1和table2中都有的行并消除所有重复行而派生出一个结果表。当all随intersect一起使用时(intersectall),不消除重复行。
注:使用运算词的几个查询结果行必须是一致的。
12、说明:使用外连接
a、left(outer)join:
左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。
sql:selecta.a,a.b,a.c,b.c,b.d,b.ffromaleftoutjoinbona.
a=b.c
b:right(outer)join:
右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。
c:full/cross(outer)join:
全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。12、分组:groupby:
一张表,一旦分组完成后,查询后只能得到组相关的信息。
组相关的信息:(统计信息)count,sum,max,min,avg分组的标准)
在sqlserver中分组时:不能以text,ntext,image类型的字段作为分组依据
在selecte统计函数中的字段,不能和普通的字段放在一起;
13、对数据库进行操作:
分离数据库:sp_detach_db;附加数据库:sp_attach_db后接表明,附加需要完整的路径名
14.如何修改数据库的名称:
sp_renamedb'old_name','new_name'
二、提升
1、说明:复制表(只复制结构,源表名:a新表名:b)(access可用)
法一:select*intobfromawhere15
13、说明:一条sql语句搞定数据库分页
selecttop10b.*from(selecttop20主键字段,排序字段from表名orderby排序字段desc)a,表名bwhereb.主键字段=a.主键字段orderbya.排序字段
具体实现:
关于数据库分页:
declare@startint,@endint
@sqlnvarchar(600)
set@sql=’selecttop’+str(@end-@start+1)+’+fromtwhereridnotin(selecttop’+str(@str-1)+’ridfromtwhererid>-1)’
execsp_executesql@sql
注意:在top后不能直接跟一个变量,所以在实际应用中只有这样的进行特殊的处理。rid为一个标识列,如果top后还有具体的字段,这样做是非常有好处的。因为这样可以避免top的字段如果是逻辑索引的,查询的结果后实际表中的不一致(逻辑索引中的数据有可能和数据表中的不一致,而查询时如果处在索引则首先查询索引)
14、说明:前10条记录
selecttop10*formtable1where范围
15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,
等等.)
selecta,b,cfromtablenametawherea=(selectmax(a)fromtablenametbwheretb.b=ta.b)
16、说明:包括所有在tablea中但不在tableb和tablec中的行并消除所有重复行而派生出一个结果表
(selectafromtablea)except(selectafromtableb)except(selectafromtablec)
17、说明:随机取出10条数据
selecttop10*fromtablenameorderbynewid()
18、说明:随机选择记录
selectnewid()
19、说明:删除重复记录
1),deletefromtablenamewhereidnotin(selectmax(id)fromtablenamegroupbycol1,col2,...)
2),selectdistinct*intotempfromtablename
deletefromtablename
insertintotablenameselect*fromtemp
评价:这种操作牵连大量的数据的移动,这种做法不适合大容量但数据操作3),例如:在一个外部表中导入数据,由于某些原因第一次只导入了一部分,但
很难判断具体位置,这样只有在下一次全部导入,这样也就产生好多重复的字段,怎样删除重复字段
altertabletablename
--添加一个自增列
addcolumn_bintidentity(1,1)
deletefromtablenamewherecolumn_bnotin(
selectmax(column_b)fromtablenamegroupbycolumn1,column2,...)altertabletablenamedropcolumncolumn_b
20、说明:列出数据库里所有的表名
selectnamefromsysobjectswheretype='u'//u代表用户
21、说明:列出表里的所有的列名
selectnamefromsyscolumnswhereid=object_id('tablename')
22、说明:列示type、vender、pcs字段,以type字段排列,case可以方便地实现多重选择,类似select中的case。
selecttype,sum(casevenderwhen'a'thenpcselse0end),sum(casevenderwhen'c'thenpcselse0end),sum(casevenderwhen'b'thenpcselse0end)fromtablenamegroupbytype
显示结果:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安徽省宣城市2023-2024学年九年级上学期期末数学试题
- 2024年版:高端装备制造生产线融资租赁合同
- 2024-2030年中国双槽式清洗机项目可行性研究报告
- 2024全新年度企业师徒传承与品牌价值提升合同3篇
- 2024年特许经营合同的特许经营范围及权利义务
- 2024年玻璃幕墙制作安装合同
- 2024年标准化系统安装服务协议范本版B版
- 吕梁学院《会计学原理》2023-2024学年第一学期期末试卷
- 2024年度事业单位与境外专家劳动合同规范9篇
- 2024年桃树果苗采购合同样本3篇
- 三角形的高、中线与角平分线课件
- 在线教育平台行业五年发展洞察及发展预测分析报告
- 2023年部编版道德与法治五年级下册全册单元复习课教案
- 2024年江苏苏州市事业单位专业化青年人才定岗特选444人历年高频500题难、易错点模拟试题附带答案详解
- 学校食堂舆情处置预案
- 2024年大学生信息素养大赛(省赛)考试题库(含答案)
- 应用语言学智慧树知到答案2024年杭州师范大学
- Chinese Festivals (教学设计)-2024-2025学年外研版(一起)英语五年级上册
- 乙方和甲方对赌协议书范本
- 2024年人教版八年级数学(上册)期末试卷及答案(各版本)
- 安全先进个人事迹材料(7篇)
评论
0/150
提交评论