sql server 应用与开发范例宝典.docx
- 文档编号:29987005
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:17
- 大小:21.21KB
sql server 应用与开发范例宝典.docx
《sql server 应用与开发范例宝典.docx》由会员分享,可在线阅读,更多相关《sql server 应用与开发范例宝典.docx(17页珍藏版)》请在冰豆网上搜索。
sqlserver应用与开发范例宝典
sqlserver应用与开发范例宝典
04
094.创建数据库:
CREATEDATABASEdb_YYJXC
095.修改数据库:
(1).
ALTERDATABASEdb_YYJXC
MODIFYFILE(NAME=db_YYJXC_DATA,SIZE=2MB,FILEGROWTH=512KB)
(2).
ALTERDATABASEdb_YYJXC
ADDFILE(NAME=db_YYJXC_DATA2,FILENAME='C:
\ProgramFiles\MicrosoftSQLServer\MSSQL\Data\db_YYJXC_Data2.ndf',MAXSIZE=UNLIMITED,SIZE=2MB,FILEGROWTH=512KB)
096.删除数据库:
DROPDATABASEdb_YYJXC
097.创建数据表:
CREATETABLE人员表(编号intIDENTITYPRIMARYKEY,姓名varchar(10)NOTNULL,性别varchar
(2)NULL,地址varchar(30)NULL,电话varchar(20)NULL)
098.定义计算字段:
CREATETABLE销售信息表(药品编号varchar(7)NOTNULL,药品名称varchar(30)NOTNULL,规格varchar(20)NULL,产地varchar(30)NULL,数量floatNOTNULL,销售价floatNOTNULL,
金额AS(数量*销售价),销售票号varchar(30)NOTNULL)
099.修改表:
ALTERTABLE人员表
ADD相片imageNULL
100.删除表:
DROPTABLE人员表
101.修改人员表名称:
(1)EXECsp_rename'人员表','人员信息表'
(2)修改字段名称:
EXECsp_rename'人员信息表.电话','联系电话','COLUMN'
102.分离数据库:
sp_detach_db@dbname='db_YYJXC'
104.附加单文件数据库:
EXECsp_detach_db@dbname='pubs'
EXECsp_attach_single_file_db@dbname='pubs',@physname='c:
\ProgramFiles\MicrosoftSQLServer\MSSQL\Data\pubs.mdf'
105.建立备份设备:
sp_addumpdevice'disk','mybackup','d:
\Backup\mybackup.bak'
106.删除备份设备:
sp_dropdevice'mybackup','delfile
107.备份数据库:
BACKUPDATABASEdb_CSell
TOdisk='d:
\mybackup\db_CSell备份.bak'
108.还原数据库:
RESTOREDATABASEdb_CSell
FROMdisk='d:
\mybackup\db_CSell备份.bak'
05
109.select产品名称fromtb_mrbccd
110.select产品编号,产品名称,销售价格fromtb_mrbccd
111.select*fromtb_mrbccd
112.SELECTID"编号",Name姓名,Math_Score'数学成绩',
Music_ScoreAS音乐成绩,English_ScoreAS英文成绩
FROMtb_StuScore
113.SELECT编号,商品名称,数量,单价,进价,
(单价*数量)AS销售额,(单价*数量-进价*数量)AS利润
FROMtb_xsb
114.SELECT商品名称
FROMtb_xsb
WHERE(单价*数量-进价*数量)>300
115.列出商品利润小于300的商品名称
SELECT商品名称
FROMtb_xsb
WHERE(单价*数量-进价*数量)<300
116.列出商品利润在200元~500元之间的商品名称
SELECT商品名称,(单价*数量-进价*数量)AS利润
FROMtb_xsb
WHERE(单价*数量-进价*数量)>200
AND(单价*数量-进价*数量)<500
117.查询图书价格介于68元~88元之间的图书名称
select*
frommrbooks
where图书价格between68and88
118.利用模糊查询进行区间查询
select*
frommrbooks
WHERE图书价格LIKE'_9'
119.查询图书库存表中现存数量前5名的图书信息
SELECTTOP5*
FROMtb_BookStorce05
ORDERBY现存数量DESC
120.查询图书库存表中现存数量后5名的图书信息
SELECTTOP5*
FROMtb_BookStorce05
ORDERBY现存数量
122.将职工表中的信息按照奖金升序(或降序)输出
select*fromtb_employee05orderby奖金
123.查询员工表中按工资、奖金两次排序后的信息
select*fromtb_employee05orderby工资,奖金
124.将在留学生表中查询的结果中按国籍降序排序
select*fromtb_abstu05orderbysubstring(国籍,1,1)
125.在学生信息表中按学生的姓氏笔画重新排序
select*
fromtb_stu05
orderby姓名collatechinese_prc_stroke_cs_as_ks_ws
126.根据工资与奖金之和生成的列对员工信息排列
select姓名,奖金as本月奖金
fromtb_employee05
orderby本月奖金
127.查询数字
SELECTID,Name,Math_Score,Music_Score,EngLish_Score
FROMtb_StuScore
WHERENOT(EngLish_Score>=90)OR(Math_Score>=95)
128.利用_通配符查数学成绩在70~99之间学生信息
SELECT*
FROMtb_StuScore
WHEREMath_scoreLIKE'8_'
129.利用%通配符查询学生表中姓李的员工信息
SELECT*
FROMtb_Stu05
WHERE姓名LIKE'李%'
130.利用[]通配符查英语成绩95~99之间学生信息
SELECT*
FROMtb_StuScore
WHEREEnglish_scoreLIKE'9[5-9]%'
131.利用[^]通配符查数学不在90~99分间学生信息
SELECT*
FROMtb_StuScore
WHEREMath_ScoreLIKE'[^9][0-9]'
132.复杂的模式查询
SELECT*
FROMtb_StuScore
WHERE(NameLIKE'大%')
AND((Math_ScoreLIKE'[^7]_')
OR(EngLish_scoreLIKE'9[0-9]'))
133.除去图书销售表中相同的图书信息
SELECTDISTINCT书号,书名,作者,出版社
FROMtb_BookSell
ORDERBY书号
134.列出图书销售表中图书重印超过1次的图书
SELECT书名,书号,作者,COUNT(书名)AS重复数量
FROMtb_Booksell
GROUPBY书名,书号,作者
HAVINGCOUNT(书名)>=2
135.查询学生信息表中备注信息不为空的学生信息
SELECT学生姓名,所在学院,备注信息
FROMtb_StuInfo
WHERE备注信息ISNOTNULL
136.列出学生信息表中备注信息为空的学生信息
SELECT学生姓名,所在学院,备注信息
FROMtb_StuInfo
WHERE备注信息ISNULL
137.利用OR运算符进行区间定位查询
SELECT*
FROMtb_StuScore
WHEREMath_Score>95OREngLish_Score>95
138.利用AND运算符进行区间定位查询
SELECT*
FROMtb_StuScore
WHEREMath_Score>90ANDEngLish_Score>90
139.应用OR、AND执行多个搜索条件查询
SELECT*
FROMtb_StuScore
WHERE(Math_Score>=95ORMusic_Score>95)
ANDEngLish_Score>=90
140.统一字段格式进行查询
SELECT'姓名:
'+Name+';编号:
'+
CONVERT(varchar(3),id)AS学生信息
FROMtb_StuScore
141.将客户信息表中客户姓名字段中的空格去除
SELECT姓名,LTRIM(姓名)AS去除左面空格,
RTRIM(姓名)AS去除右面空格,
LTRIM(RTRIM(姓名))AS去除左右空格
FROM客户信息表
142.对工资数据表中查询出的工资进行四舍五入
SELECT人员姓名,ROUND(代扣税,-1)AS代扣税,
ROUND(本月扣零,0)AS本月扣零,
CAST(ROUND(应发合计,1)ASreal)AS应发合计,实发合计
FROM工资数据表
06
143.在职工表中去除编号与姓名字符串中尾部空格
select编号,rtrim(编号)as去空格后,
姓名,rtrim(姓名)as去空格后,
专业,rtrim(专业)as去空格后
fromtb_stu06
144.在商品订单表中截取客户的姓和名的信息
select姓名,substring(姓名,1,1)as姓,
substring(姓名,2,2)as名字
fromtb_stu05
145.连接图书表中书名与类别生成图书说明信息
select图书名称,图书分类,
(图书名称+'的类别为'+图书分类)as说明
fromtb_aspnetbook
146.在报名表中将“200900”插入到原用户报名编号中
select学号,姓名,
stuff(学号,2,2,200900)as新学号
fromtb_stu05
147.获取字符在字符串中出现的次数
selectlen('applesisintheappletree')-
len(replace('applesisintheappletree','p',''))/len('p')asa
fromtb_name06
148.将外籍留学生表中的学生姓大写名小写
selectupper(firstname)asup_firstname,
lower(lastname)aslow_lastname
fromtb_name06
149.从字符串中删除元音字符
selectfirstname,
replace(replace(replace(replace(
replace(firstname,'A',''),'E',''),'I',''),'O',''),'U','')
as修改后
fromtb_name06
150.从字符串中分离字符和数字
declare@invarchar(50);set@i='';
declare@jnvarchar(50);set@j='';
select@i=@i+b.c
from(selectsubstring(a.n,iter.pos,1)asc
from(select'asdf1*h456'asn)a,
(selectidasposfromtb_num06)iter
whereiter.pos<=len(a.n))b
whereascii(b.c)between48and57;
select@j=@j+b.c
from(selectsubstring(a.n,iter.pos,1)asc
from(select'asdf1*h456'asn)a,
(selectidasposfromtb_num06)iter
whereiter.pos<=len(a.n))b
whereascii(b.c)notbetween48and57;
select@ias数字,@jas字符
151.去除字符串中非字母和数字的字符
declare@invarchar(50);set@i='';
declare@jnvarchar(50);set@j='as#df*4,56';
select@i=@i+b.c
from(selectsubstring(a.n,iter.pos,1)asc
from(select@jasn)a,(selectidasposfromtb_num06)iterwhereiter.pos<=len(a.n))b
whereascii(b.c)between48and122;
select@i去掉后,@j去掉前
152.实例152比较留学生信息中学生的姓是否相同
select(casewhen'Helen'='Helan'then'相同'
else'不同'end)as比较结果
select(casewhen'Patricia'='Patricia'then'相同'
else'不同'end)as比较结果
153.比较两个字符串的相似性
selectdifference('green','greene')as结果,
difference('visual','basic')as结果,
difference('wear','where')as结果
154.在外籍留学生信息中英文姓名大小写敏感查询
select*
fromtb_num06
where姓名='MARY'collateChinese_PRC_CS_AI
155.将电话号码中的“-”去掉,但保留分机号前的“-”
select电话号码as删除前,
stuff(电话号码,charindex('-',电话号码),1,'')as删除后
fromtb_tel06
156.提取电话号码中的区号和号码
select电话号码as提取前,
left(电话号码,charindex('-',电话号码)-1)as区号,
substring(电话号码,charindex('-',电话号码)+1,
len(电话号码)-charindex('-',电话号码))as号码
fromtb_tel06
157.格式化字符串为日期格式
select图书名称,图书分类,出版日期,
convert(varchar(10),
cast(出版日期assmalldatetime),120)as格式化日期
fromtb_aspnetbook
158.使用SQRT函数查询公式表中字段A的平方根
SELECTA,SQRT(ABS(A))ASSQRT
FROMtb_Numbers
159.使用EXP函数查询数学公式表中e的A次幂
SELECTA,EXP(A)ASEXP
FROMtb_Numbers
160.利用三角函数查询公式表中字段A余弦、正弦
SELECTA,COS(A)ASMY_COS,SIN(A)ASMY_SIN,TAN(A)ASMY_TAN
FROMtb_Numbers
161.查询出版日期在10月份的图书名称及出版日期
select图书名称,图书分类,出版日期fromtb_aspnetbook
wheremonth(出版日期)=10
orderby出版日期
162.查询今天是周几
selectdatename(dw,getdate())as今天是周几
163.查询学生信息表中学生间入学时间间隔多少天
selectdatediff(day,(select入校时间fromtb_student06where姓名='贯红'),(select入校时间fromtb_student06where姓名='陈丹'))as时间差距
164.计算两个日期之间的月份数
selectdatediff(mm,(select进货日期fromtb_ware06where商品名称='X笔记本'),(select第二次进货fromtb_ware06where商品名称='X笔记本'))as相差月份
165.计算员工全年工作日
selectdatename(dw,'2008-01-01')as'2008-01-01星期几',
datename(dw,'2008-12-31')as'2008-12-31星期几',
datediff(wk,'2008-01-01','2008-12-31')as全年星期数,
(datediff(day,'2008-01-01','2008-12-31')-
(datediff(ww,'2008-01-01','2008-12-31'))*2)-
(select全年请假天数fromtb_AllYearPaywhere员工编号='mr001')
as员工编号001全年工作日
166.查询当前图书出版日期与下一次出版日期间隔
selectx.*,
datediff(day,x.出版日期,x.下一次出版日期)两次出版相差的天数from(selecte.书号,e.书名,e.出版日期,
(selectmin(d.出版日期)fromtb_booksell06d
whered.出版日期>e.出版日期)下一次出版日期
fromtb_booksell06e)x
167.将日期中的年月日以列的形式显示
select书名,
year((select出版日期fromtb_booksell06where书号='1'))as年份,
month((select出版日期fromtb_booksell06where书号='1'))as月份,
day((select出版日期fromtb_booksell06where书号='1'))as日期
fromtb_booksell06where书号='1'
168.查询当前日期加3个月以后的日期
selectdateadd(mm,3,getdate())as'DAYNUMBER'
169.分别获取某月份、本周和当前季度的第一天
/*获取某月份第一天*/
selectdateADD(mm,datediff(mm,0,'2009-3-18'),0)
as'DAY_NUMBER'
/*获取本周的第一天*/
selectdateadd(wk,datediff(wk,0,getdate()),0)
as'DAY_NUMBER'
/*获取当前季度的第一天*/
selectdateadd(qq,datediff(qq,0,getdate()),0)
as'DAY_NUMBER'
170.分别获取上个月、去年和本年的最后一天
/*获取上个月的最后一天*/
selectdateadd(ms,-3,dateadd(mm,datediff(mm,0,getdate()),0))
as'DATENUMBER上个月最后一天'
/*获取去年最后一天*/
SELECTdateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate()),0))
as'DATENUMBER去年最后的一天'
/*获取本年的最后一天*/
SELECTdateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate())+1,0))
as'DATENUMBER本年最后的一天'
171.把长日期格式数据转化为短日期格式数据
select书名,convert(char(10),出版日期,120)as日期fromtb_booksell06
172.显示为日期格式数据中的小时、分、秒
SELECTCONVERT(nvarchar(10),getdate(),8)
as当前时间
173.将日期可式中的“.”转化为“-”
updatetb_student06
set入校时间='20'+replace(入校时间,'.','-')
where编号=3
07
174.利用SUM函数对职员工资进行汇总
SELECTSUM(salary)AS工资,SUM(salary+bonus)AS工资及奖金
FROMtb_treatment
175.利用AVG函数求学生各学科的平均成绩
SELECTAVG(语文)AS语文,AVG(代数)
AS代数,AVG(几何)AS几何,AVG(英语)AS英语FROMtb_stuAchievement
176.利用MIN函数求销售额和利润的最低值
SELECTDISTINCT(编号),商品名称,销价AS销售额最少,
利润AS利润最少,门店名称
FROMtb_sell
WHERE销价IN
(SELECTMIN(销价)
FROMtb_sell)OR利润IN(SELECTMIN(利润)FROMtb_sell)
177.利用MAX函数求员工月销售业绩的最高值
SELECTtb1.销售员,tb1.销售额AS最高销售额
from(SELECT销售员,SUM(销售额)AS销售额FROMtb_Seller
WHEREMONTH(日期)='12'GROUPBY销售员)AStb1
WHEREtb1.销售额=(SELECTMAX(销售额)AS最高销售额
FROM(SELECT销售员,SUM(销售额)AS销售额
FROMtb_SellerWHEREM
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- sql server 应用与开发范例宝典 应用 开发 范例 宝典