SQL Server常用函数及命令
1.字符串函数
--ascii函数,返回字符串最左侧字符的ascii码值
SELECT ASCII('a') AS asciistr
--ascii代码转换函数,返回指定ascii值对应的字符
SELECT CHAR(97) AS strs
--left(c1,n)左子串函数,返回字符串c1中从左边开始的n个字符
SELECT LEFT('helloworld',4) AS lefts
--len(c1)返回字符串c1的字符(而不是字节)数,其中不包含尾随空格
SELECT LEN('helloworld') AS lens
--lower(c1) 大写转换为小写
SELECT LOWER('HELLOWORLD') AS lowers
--LTRIM(c1)删除前导空格,返回删除了前导空格的字符串 ltrim()去左边空格(rtrim()右边空格)
SELECT LTRIM(' asafas') AS lt
--REPLACE(C1,C2,C3) 替换字符函数
SELECT REPLACE('ZHESSDF-DFDSS','-','@') AS RE
--REPLICATE(C1,N)复制函数,以指定的次数n重复字符串c1
SELECT REPLICATE('这是复制函数-',3) AS rep
--right(c1,n)右子串函数,返回字符串c1中从右边开始的n个字符串
SELECT RIGHT('asdfggh',4) AS strs
--space(n) 空格函数,返回由n个重复的空格字符串
SELECT SPACE(7) AS spaces
--str(f,n,m)返回由数值数据f转换来的字符串,字符串的长度有参数n决定,字符串中保留的小数位书由M决定
SELECT STR(12.1234,9,6) AS strs
--SUBSTRING(c1,n1,n2)求子串函数,返回字符串c1从n1开始,长度为n2的子串
SELECT SUBSTRING('mylightshina',4,5)
--upper(c1) 转大写
SELECT UPPER('asdff') AS up
--ISNULL('内容',''):判断字符串是否为null,是的话返回‘’
2.日期函数
--时间日期
SELECT 'today''s date is '+ CONVERT(VARCHAR(12), GETDATE(),102)AS da
SELECT GETDATE() 当前日期时间,
GETUTCDATE() ut日期时间,
DATEPART(YEAR, GETDATE()) 年,
DATENAME(YEAR, GETDATE()) 年名,
DATEPART(MONTH, GETDATE()) 月,
DATENAME(MONTH, GETDATE()) 月份名,
DATEPART(DAY, GETDATE()) 日,
DAY(GETDATE()) 日,
MONTH(GETDATE()) 月,
YEAR(GETDATE()) 年,
DATEADD(DAY, 5, GETDATE()) 新日期,
DATEDIFF(DAY, GETDATE(), '2018-12-17') AS 日期间隔;
3.系统函数
--转换函数 cast(),convert()
SELECT CAST('2018' AS DECIMAL(10, 5)) AS deci,
CONVERT(VARCHAR, GETDATE(), 101) AS '101',
CONVERT(VARCHAR, GETDATE(), 102) AS '102',
CONVERT(VARCHAR, GETDATE(), 103) AS '103',
CONVERT(VARCHAR, GETDATE(), 104) AS '104',
CONVERT(VARCHAR, GETDATE(), 105) AS '105',
CONVERT(VARCHAR, GETDATE(), 106) AS '106',
CONVERT(VARCHAR, GETDATE(), 107) AS '107',
CONVERT(VARCHAR, GETDATE(), 108) AS '108',
CONVERT(VARCHAR, GETDATE(), 109) AS '109',
CONVERT(VARCHAR, GETDATE(), 100) AS '100',
CONVERT(VARCHAR, GETDATE(), 120) AS '120',
CONVERT(VARCHAR, GETDATE(), 121) AS '121',
CONVERT(VARCHAR, GETDATE(), 126) AS '126',
CONVERT(VARCHAR, GETDATE(), 130) AS '130'; --创建uniqueidentifier类型的唯一值
SELECT NEWID() AS Id
--ISNULL(c1,c2)
SELECT ISNULL(ParentId,'########'),* FROM dbo.Module
--isdate(exp)判断exp是否为有效日期
SELECT ISDATE('2018-12-11 12:2:1')
--ISNUMERIC(c1)判断c1是否是数字,是则返回1,否返回0
SELECT ISNUMERIC('1') 是,ISNUMERIC('a') 否
4.流程控制语句
--begin...end语句块
BEGIN SELECT *
FROM dbo.Role; END;
--if...else语句
IF 1 > 4
SELECT *
FROM dbo.Role;
ELSE
SELECT *
FROM dbo.FlowInstance;
--简单case表达式
SELECT CASE ActivityType WHEN 2 THEN 'qqq' ELSE 'www' END ss ,* FROM dbo.FlowInstance
--搜索case表达式
SELECT CASE WHEN ActivityType>2 THEN 'qqq'ELSE 'www' END ss ,* FROM dbo.FlowInstance --waitfor语句
WAITFOR DELAY '00:00:03';
SELECT *
FROM dbo.Role;
--在下午八点查询输出
WAITFOR TIME '20:00:00';
SELECT *
FROM dbo.Form;
--while语句
DECLARE @sum INT,
@i INT;
SET @i = 0;
SET @sum = 0;
WHILE @i <= 100
BEGIN
SET @i = @i + 1;
IF ((@i % 2) = 0)
CONTINUE;
SET @sum = @sum + @i;
IF (@i > 50)
BREAK;
END;
PRINT '1-50中的奇数和为' + CONVERT(CHAR(6), @sum);
5.sp命令
1、数据库:
--sp_helpdb:报告有关指定数据库或所有数据库的信息。
sp_helpdb --显示所有数据库信息(名称、大小等)
sp_helpdb Recruitment --显示Recruitment数据库信息(名称、大小等)
--sp_renamedb:更改数据库的名称。
sp_renamedb ’pubs’,’pub’--将名为pubs的数据库改名为pub
--sp_dboption:显示或更改数据库选项。不能在master 或tempdb 数据库上使用sp_dboption。
sp_dboption ’Recruitment’,’READ ONLY’,’TRUE’--设置Recruitment数据库为READ ONLY
2、表
--sp_help:当前数据库中查找对象。
sp_help Employee --显示Employee表的结构
--sp_rename:更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。
sp_rename ’employee’,’employ’
3、用户自定义数据类型
--sp_addtype:创建用户定义的数据类型。
sp_addtype birthday, datetime, ’NULL’
--创建了一个名为birthday 的用户定义数据类型(基于datetime),该数据类型允许空值
--sp_droptype: 删除用户定义的数据类型。
sp_droptype ’birthday’--删除用户定义的数据类型birthday
--sp_help:查看用户自定义数据类型的情况
sp_help birthday --查看用户定义的数据类型birthday的信息
4、规则
--sp_bindrule:将规则绑定到列或用户定义的数据类型。
sp_bindrule rulType,’Titles.Type’--将规则rulType绑定到Titles表的Type列
--sp_unbindrule:在当前数据库中为列或用户定义数据类型解除规则绑定。
sp_unbindrule ’Titles.Type’--取消绑定到Tiltes表中的Type列的规则
--sp_helptext:查看规则的详细信息。
sp_helptext rulType --查看规则rulType的详细信息
5、缺省 --sp_bindefault:将默认值绑定到列或用户定义的数据类型。
--sp_unbindefault:在当前数据库中为列或者用户定义数据类型解除(删除)默认值绑定。
--sp_helptext:查看默认值的信息。
6、索引
--sp_helpindex:报告有关表或视图上索引的信息。
--sp_helpindex employee --查看employee表中索引信息
7、视图
--sp_helptext:查看视图文本
8、存储过程
--sp_helptext:查看存储过程文本
9、触发器
--sp_help <触发器名>:查看指定触发器是否存在
--sp_helptrigger:返回指定表中定义的当前数据库的触发器类型。
10、其他
--sp_help:报告有关数据库对象、用户定义数据类型或 数据类型的信息。
--sp_helptext:显示规则、默认值、未加密的存储过程、用户定义函数、触发器或视图的文本。
--sp_rename:更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。
SQL Server常用函数及命令的更多相关文章
- SQL Server 常用函数使用方法
之前就想要把一些 SQL 的常用函数记录下来, 直到今天用到substring()这个函数,C# 里面这个方法起始值是 0,而 SQL 里面起始值是 1.傻傻分不清楚... 这篇博客作为记录 SQL ...
- Oracle 与Sql Server常用函数对比
来自:http://topic.csdn.net/u/20080704/08/b2b8c42f-b0d6-4cda-98b1-6e4a279b4ff8.html 感谢楼主 函数 SQLServer和O ...
- SQL Server 常用函数总结
SQL去空格函数 1.ltrim(‘内容’)--去掉字符左边的空格 代码如下 declare @str varchar(100) set @str=' ADFADF' select @str sele ...
- SQL Server 常用函数使用方法(持续更新)
之前就想要把一些 SQL 的常用函数记录下来,不过一直没有实行...嘿嘿... 直到今天用到substring()这个函数,C# 里面这个方法起始值是 0,而 SQL 里面起始值是 1.傻傻分不清楚. ...
- Sql Server常用函数及技巧
使用Sql Server好长时间了,今天特别想总结一下,算是回顾吧! 总结: 其实很多技巧,都是基于SQL Server自带的System Views,System Stored Procedures ...
- SQL Server 常用函数
1.DATEADD 在向指定日期加上一段时间的基础上,返回新的 datetime 值. 语法 DATEADD ( datepart , number, date ) 参数 datepart 是规定应向 ...
- sql server常用函数、常用语句
一.常用函数 1.字符串函数 : charindex(':','abc:123') --寻找一个字符在一段字符串中起始的位置 len('zhangsan') --获取一段字符串的长度 lef ...
- SQL Server常用函数使用方法(学习)
1.转载至 https://www.cnblogs.com/Brambling/p/6779434.html Substring()函数,用于截取字符串方法,三个参数 参数1:用于指定要操作的字符串 ...
- SQL Server常用函数汇总
1.day(date) 用途:获取日期是所在月的几号 参数:date是一个可以解析为 time.date.smalldatetime.datetime.datetime2 或 datetime ...
随机推荐
- Pandas_VBA_数据筛选比较
Pandas与VBA筛选数据的比较 Author:Collin_PXY 需求: 将B列里值为Completed 和 Pending的A,B,D三列数据筛选出来,新建一个名为 Filited_data的 ...
- UNIX目录访问操作
1.目录访问相关函数: DIR* opendir (const char * path ); struct dirent* readdir(DIR *dirptr) ;参数是一个指向dirent 结构 ...
- java的for循环中遇到异常抛出后继续循环执行
@Testpublic void loopTryCatchTest() throws Exception { Map<String, Object> a = new HashMap(); ...
- centos6安装calamari
安装操作系统 首先安装操作系统centos6,安装过程选择的是base server,这个不相同不要紧,出现缺少包的时候去iso找出来安装就可以了 calamari的简单介绍 首先简单的介绍下cala ...
- 使用iptables做端口转发
通过iptables可以做转发 #!/bin/sh IPT="/sbin/iptables" /bin/echo "1" > /proc/sys/net/ ...
- [C/C++] 结构体内存对齐:alignas alignof pack
简述: alignas(x):指定结构体内某个成员的对齐字节数,指定的对齐字节数不能小于它原本的字节数,且为2^n; #pragma pack(x):指定结构体的对齐方式,只能缩小结构体的对齐数,且为 ...
- 标准库之time,random,sys,os
# import time # print(time.time()) # 时间戳 # print(time.mktime(time.localtime())) # 结构化时间转换为时间戳 # prin ...
- 如何在Camtasia中对录制视频添加注释
今天我给大家带来的是一款专门录制屏幕动作的软件Camtasia,拥有了使我们的屏幕录像拥有全新的剪辑速度和更换颜色背景的特性.它不仅可以完成我们屏幕录像的心愿,还可以进行对录制的视频进行后期的编辑.这 ...
- 「CF645E」 Intellectual Inquiry
题目链接 CF645E 题意 有一个长为\(n\)的由小写字母组成的字符串,需要用小写字母再填\(m\)位,使最后的字符串中本质不同的子串数量尽量多,答案对\(10^9+7\)取模. 本题数据:\(n ...
- 对KVC和KVO的理解
html { overflow-x: initial !important } :root { --bg-color: #ffffff; --text-color: #333333; --select ...