SQL SERVER命令大全.docx
- 文档编号:15849885
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:10
- 大小:18.88KB
SQL SERVER命令大全.docx
《SQL SERVER命令大全.docx》由会员分享,可在线阅读,更多相关《SQL SERVER命令大全.docx(10页珍藏版)》请在冰点文库上搜索。
SQLSERVER命令大全
SQLSERVER命令大全
--语句功能
--数据操作
SELECT--从数据库表中检索数据行和列
INSERT--向数据库表添加新数据行
DELETE--从数据库表中删除数据行
UPDTE--更新数据库表中的数据
--数据定义
CRETETBLE--创建一个数据库表
DROPTBLE--从数据库中删除表
LTERTBLE--修改数据库表结构
CRETEVIEW--创建一个视图
DROPVIEW--从数据库中删除视图
CRETEINDEX--为数据库表创建一个索引DROPINDEX--从数据库中删除索引
CRETEPROCEDURE--创建一个存储过程DROPPROCEDURE--从数据库中删除存储过程CRETETRIGGER--创建一个触发器
DROPTRIGGER--从数据库中删除触发器CRETESCHEM--向数据库添加一个新模式DROPSCHEM--从数据库中删除一个模式CRETEDOMIN--创建一个数据值域
LTERDOMIN--改变域定义
DROPDOMIN--从数据库中删除一个域
--数据操纵
GRNT--授予用户访问权限
DENY--拒绝用户访问
REVOKE--解除用户访问权限
--事务操纵
COMMIT--结束当前事务
ROLLBCK--中止当前事务
SETTRNSCTION--定义当前事务数据访问特征--程序化SQL
DECLRE--为查询设定游标
EXPLN--为查询描述数据访问计划
OPEN--检索查询结果打开一个游标
FETCH--检索一行查询结果
CLOSE--关闭游标
PREPRE--为动态执行准备SQL语句EXECUTE--动态地执行SQL语句
DESCRIBE--描述准备好的查询
---局部变量
declre@idchr(10)
--set@id='10010001'
select@id='10010001'
---全局变量
---必须以@@开头
--IFELSE
declre@xint@yint@zint
select@x=1@y=2@z=3
if@x>@y
print'x>y'--打印字符串'x>y'
elseif@y>@z
print'y>z'
elseprint'z>y'
--CSE
usepngu
updteemployee
sete_wge=
cse
whenjob_level=’1’thene_wge*1.08
whenjob_level=’2’thene_wge*1.07
whenjob_level=’3’thene_wge*1.06
elsee_wge*1.05
end
--WHILECONTINUEBREK
declre@xint@yint@cint
select@x=1@y=1
while@x=表达式的最小整数返回的数据类型与表达式相同可为
--INTEGER/MONEY/REL/FLOT类型
FLOOR(numeric_expression)--返回)--函数返回表中指定字段的长度值COL_NME(,)--函数返回表中指定字段的名称即列名
DTLENGTH()--函数返回数据表达式的数据的实际长度
DB_ID(['dtbse_nme'])--函数返回数据库的编号
DB_NME(dtbse_id)--函数返回数据库的名称
HOST_ID()--函数返回服务器端计算机的名称
HOST_NME()--函数返回服务器端计算机的名称
IDENTITY(,)--函数将表达式中的NULL值用指定值替换
ISNUMERIC()--函数推断所给定的表达式是否为合理的数值
NEWID()--函数返回一个UNIQUEIDENTIFIER类型的数值
NULLIF(,)
--NULLIF函数在expression1与expression2相等时返回NULL值若不相等时则返回expression1的值
Orcle支持的字符函数和它们的MicrosoftSQLServer等价函数:
函数OrcleMicrosoftSQLServer
把字符转换为SCIISCIISCII
字串连接CONCT(expression+expression)
把SCII转换为字符CHRCHR
返回字符串中的开始字符(左起)INSTRCHRINDEX
把字符转换为小写LOWERLOWER
把字符转换为大写UPPERUPPER
填充字符串的左边LPDN/
清除开始的空白LTRIMLTRIM
清除尾部的空白RTRIMRTRIM
字符串中的起始模式(pttern)INSTRPTINDEX
多次重复字符串RPDREPLICTE
字符串的语音表示SOUNDEXSOUNDEX
重复空格的字串RPDSPCE
从数字数据转换为字符数据TO_CHRSTR
子串SUBSTRSUBSTRING
替换字符REPLCESTUFF
将字串中的每个词首字母大写INITCPN/
翻译字符串TRNSLTEN/
字符串长度LENGTHDTELENGTHorLEN
列表中最大的字符串GRETESTN/
列表中最小的字符串LESTN/
如果为NULL则转换字串NVLISNULL
日期函数
函数OrcleMicrosoftSQLServer
日期相加(dtecolumn+/-vlue)or
DD_MONTHSDTEDD
两个日期的差(dtecolumn+/-vlue)orMONTHS_BETWEENDTEDIFF
当前日期和时间SYSDTEGETDTE()
一个月的最后一天LST_DYN/
时区转换NEW_TIMEN/
日期后的第一个周日NEXT_DYN/
代表日期的字符串TO_CHRDTENME
代表日期的整数TO_NUMBER
(TO_CHR))DTEPRT
日期舍入ROUNDCONVERT
日期截断TRUNCCONVERT
字符串转换为日期TO_DTECONVERT
如果为NULL则转换日期NVLISNULL
转换函数
函数OrcleMicrosoftSQLServer
数字转换为字符TO_CHRCONVERT
字符转换为数字TO_NUMBERCONVERT
日期转换为字符TO_CHRCONVERT
字符转换为日期TO_DTECONVERT
16进制转换为2进制HEX_TO_RWCONVERT2进制转换为16进制RW_TO_HEXCONVERT
其它行级别的函数
函数OrcleMicrosoftSQLServer
返回第一个非空表达式DECODECOLESCE
当前序列值CURRVLN/
下一个序列值NEXTVLN/
如果exp1=exp2,返回nullDECODENULLIF
用户登录账号ID数字UIDSUSER_ID
用户登录名USERSUSER_NME
用户数据库ID数字UIDUSER_ID
用户数据库名USERUSER_NME
当前用户CURRENT_USERCURRENT_USER
用户环境(udittril)USERENVN/
在CONNECTBY子句中的级别LEVELN/
合计函数
函数OrcleMicrosoftSQLServer
vergeVGVG
CountCOUNTCOUNT
MximumMXMX
MinimumMINMIN
StndrddevitionSTDDEVSTDEVorSTDEVP
SummtionSUMSUM
VrinceVRINCEVRorVRP
Orcle还有一个有用的函数EXTRCT,提取并且返回日期时间或时间间隔表达式中特定的时间域:
EXTRCT(YERFROM日期)
SQLServer和Orcle的常用函数对比
1.绝对值
S:
selectbs(-1)vlue
O:
selectbs(-1)vluefromdul
2.取整(大)
S:
selectceiling(-1.001)vlue
O:
selectceil(-1.001)vluefromdul
3.取整(小)
S:
selectfloor(-1.001)vlue
O:
selectfloor(-1.001)vluefromdul
4.取整(截取)
S:
selectcst(-1.002sint)vlue
O:
selecttrunc(-1.002)vluefromdul
5.四舍五入
S:
selectround(1.23456,4)vlue1.23460
O:
selectround(1.23456,4)vluefromdul1.2346
6.e为底的幂
S:
selectExp
(1)vlue2.7182818284590451
O:
selectExp
(1)vluefromdul2.71828182
7.取e为底的对数
S:
selectlog(2.7182818284590451)vlue1
O:
selectln(2.7182818284590451)vluefromdul;1
8.取10为底对数
S:
selectlog10(10)vlue1
O:
selectlog(10,10)vluefromdul;1
9.取平方
S:
selectSQURE(4)vlue16
O:
selectpower(4,2)vluefromdul16
10.取平方根
S:
selectSQRT(4)vlue2
O:
selectSQRT(4)vluefromdul2
11.求任意数为底的幂
S:
selectpower(3,4)vlue81
O:
selectpower(3,4)vluefromdul81
12.取随机数
S:
selectrnd()vlue
O:
selectsys.dbms_rndom.vlue(0,1)vluefromdul;
13.取符号
S:
selectsign(-8)vlue-1
O:
selectsign(-8)vluefromdul-1
----------数学函数
14.圆周率
S:
SELECTPI()vlue3.1415926535897931
O:
不知道
15.sin,cos,tn参数都以弧度为单位
例如:
selectsin(PI()/2)vlue得到1(SQLServer)
16.sin,cos,tn,tn2返回弧度
17.弧度角度互换(SQLServer,Orcle不知道)
DEGREES:
弧度-〉角度
RDINS:
角度-〉弧度
---------数值间比较
18.求集合最大值
S:
selectmx(vlue)vluefrom
(select1vlue
union
select-2vlue
union
select4vlue
union
select3vlue)
O:
selectgretest(1,-2,4,3)vluefromdul
19.求集合最小值
S:
selectmin(vlue)vluefrom
(select1vlue
union
select-2vlue
union
select4vlue
union
select3vlue)
O:
selectlest(1,-2,4,3)vluefromdul
20.如何处理null值(F2中的null以10代替)
S:
selectF1,IsNull(F2,10)vluefromTbl
O:
selectF1,nvl(F2,10)vluefromTbl
--------数值间比较
21.求字符序号
S:
selectscii('')vlue
O:
selectscii('')vluefromdul
22.从序号求字符
S:
selectchr(97)vlue
O:
selectchr(97)vluefromdul
23.连接
S:
select'11'+'22'+'33'vlue
O:
selectCONCT('11','22')||33vluefromdul
23.子串位置--返回3
S:
selectCHRINDEX('s','sdsq',2)vlue
O:
selectINSTR('sdsq','s',2)vluefromdul
23.模糊子串的位置--返回2,参数去掉中间%则返回7
S:
selectptindex('%d%q%','sdsfsdqe')vlue
O:
orcle没发现,但是instr?
BR>selectINSTR('sdsfsdqe','sd',1,2)vluefromdul返回6
24.求子串
S:
selectsubstring('bcd',2,2)vlue
O:
selectsubstr('bcd',2,2)vluefromdul
25.子串代替返回ijklmnef
S:
SELECTSTUFF('bcdef',2,3,'ijklmn')vlue
O:
SELECTReplce('bcdef','bcd','ijklmn')vluefromdul
26.子串全部替换
S:
没发现
O:
selectTrnslte('fsdbfsegs','f','我')vluefromdul
27.长度
S:
len,dtlength
O:
length
28.大小写转换lower,upper
29.单词首字母大写
S:
没发现
O:
selectINITCP('bcddsfdf')vluefromdul
30.左补空格(LPD的第一个参数为空格则同spce函数)
S:
selectspce(10)+'bcd'vlue
O:
selectLPD('bcd',14)vluefromdul
31.右补空格(RPD的第一个参数为空格则同spce函数)
S:
select'bcd'+spce(10)vlue
O:
selectRPD('bcd',14)vluefromdul
32.删除空格
S:
ltrim,rtrim
O:
ltrim,rtrim,trim
33.重复字符串
S:
selectREPLICTE('bcd',2)vlue
O:
没发现
34.发音相似性比较(这两个单词返回值一样,发音相同)
S:
SELECTSOUNDEX('Smith'),SOUNDEX('Smythe')
O:
SELECTSOUNDEX('Smith'),SOUNDEX('Smythe')fromdul
SQLServer中用SELECTDIFFERENCE('Smithers','Smythers')比较soundex的差返回0-4,4为同音,1最高
--------------日期函数
35.系统时间
S:
selectgetdte()vlue
O:
selectsysdtevluefromdul
36.前后几日
直接与整数相加减
37.求日期
S:
selectconvert(chr(10),getdte(),20)vlue
O:
selecttrunc(sysdte)vluefromdul
selectto_chr(sysdte,'yyyy-mm-dd')vluefromdul
38.求时间
S:
selectconvert(chr(8),getdte(),108)vlue
O:
selectto_chr(sysdte,'hh24:
mm:
ss')vluefromdul
39.取日期时间的其他部分
S:
DTEPRT和DTENME函数(第一个参数决定)
O:
to_chr函数第二个参数决定
参数---------------------------------下表需要补充
yeryy,yyyy
qurter,q(季度)
monthmm,m(mO无效)
dyofyerdy,y(O表星期)
dydd,d(dO无效)
weekwk,ww(wkO无效)
weekdydw(O不清楚)
Hourhh,hh12,hh24(hh12,hh24S无效)
minutemi,n(nO无效)
secondss,s(sO无效)
millisecondms(O无效)
----------------------------------------------
40.当月最后一天
S:
不知道
O:
selectLST_DY(sysdte)vluefromdul
41.本星期的某一天(比如星期日)
S:
不知道
O:
SELECTNext_dy(sysdte,7)vuleFROMDUL;
42.字符串转时间
S:
可以直接转或者selectcst('20XX-09-08'sdtetime)vlue
O:
SELECTTo_dte('20XX-01-0522:
09:
38','yyyy-mm-ddhh24-mi-ss')vuleFROMDUL;
43.求两日期某一部分的差(比如秒)
S:
selectdtediff(ss,getdte(),getdte()+12.3)vlue
O:
直接用两个日期相减(比如d1-d2=12.3)
SELECT(d1-d2)*24*60*60vuleFROMDUL;
44.根据差值求新的日期(比如分钟)
S:
selectdtedd(mi,8,getdte())vlue
O:
SELECTsysdte+8/60/24vuleFROMDUL;
45.求不同时区时间
S:
不知道
O:
SELECTNew_time(sysdte,'ydt','gmt')vuleFROMDUL;
-----时区参数,在东8区应该是Ydt-------
STDT大西洋标准时间
BSTBDT白令海标准时间
CSTCDT中部标准时间
ESTEDT东部标准时间
GMT格林尼治标准时间
HSTHDT阿拉斯加—夏威夷标准时间
MSTMDT山区标准时间
NST纽芬兰标准时间
PSTPDT太平洋标准时间
YSTYDTYUKON标准时间
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL SERVER命令大全 SERVER 命令 大全