sqlserver常用函数

Posted laoyang01

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver常用函数相关的知识,希望对你有一定的参考价值。

1.字符串函数

 1 --ascii函数,返回字符串最左侧字符的ascii码值
 2 SELECT ASCII(\'dsd\') AS asciistr 
 3 --ascii代码转换函数,返回指定ascii值对应的字符
 4 SELECT CHAR(97) AS strs
 5 --left(c1,n)左子串函数,返回字符串c1中从左边开始的n个字符
 6 SELECT LEFT(\'helloworld\',4) AS lefts 
 7 --len(c1)返回字符串c1的字符(而不是字节)数,其中不包含尾随空格
 8 SELECT LEN(\'helloworld\') AS lens
 9 --lower(c1)
10 SELECT LOWER(\'HELLOWORLD\') AS lowers
11 --LTRIM(c1)删除前导空格,返回删除了前导空格的字符串
12 SELECT LTRIM(\'  asafas\') AS lt
13 --REPLACE(C1,C2,C3)
14 SELECT REPLACE(\'ZHESSDF-DFDSS\',\'-\',\'@\') AS RE
15 --REPLICATE(C1,N)复制函数,以指定的次数n重复字符串c1
16 SELECT REPLICATE(\'这是复制函数-\',3) AS rep
17 --right(c1,n)右子串函数,返回字符串c1中从右边开始的n个字符串
18 SELECT RIGHT(\'asdfggh\',4) AS strs
19 --space(n) 空格函数,返回由n个重复的空格字符串
20 SELECT SPACE(7) AS spaces
21 --str(f,n,m)返回由数值数据f转换来的字符串,字符串的长度有参数n决定,字符串中保留的小数位书由M决定
22 SELECT STR(12.1234,9,6) AS strs
23 --SUBSTRING(c1,n1,n2)求子串函数,返回字符串c1从n1开始,长度为n2的子串
24 SELECT SUBSTRING(\'mylightshina\',4,5)
25 --upper(c1)
26 SELECT UPPER(\'asdff\') AS up

2.日期函数

1 --时间日期
2 SELECT  \'today\'\'s date is \'+ CONVERT(VARCHAR(12), GETDATE(),102)AS da
 1 SELECT GETDATE() 当前日期时间,
 2        GETUTCDATE() ut日期时间,
 3        DATEPART(YEAR, GETDATE()) 年,
 4        DATENAME(YEAR, GETDATE()) 年名,
 5        DATEPART(MONTH, GETDATE()) 月,
 6        DATENAME(MONTH, GETDATE()) 月份名,
 7        DATEPART(DAY, GETDATE()) 日,
 8        DAY(GETDATE()) 日,
 9        MONTH(GETDATE()) 月,
10        YEAR(GETDATE()) 年,
11        DATEADD(DAY, 5, GETDATE()) 新日期,
12        DATEDIFF(DAY, GETDATE(), \'2018-12-17\') AS 日期间隔;

3.系统函数

 1 --转换函数 cast(),convert()
 2 SELECT CAST(\'2018\' AS DECIMAL(10, 5)) AS deci,
 3        CONVERT(VARCHAR, GETDATE(), 101) AS \'101\',
 4        CONVERT(VARCHAR, GETDATE(), 102) AS \'102\',
 5        CONVERT(VARCHAR, GETDATE(), 103) AS \'103\',
 6        CONVERT(VARCHAR, GETDATE(), 104) AS \'104\',
 7        CONVERT(VARCHAR, GETDATE(), 105) AS \'105\',
 8        CONVERT(VARCHAR, GETDATE(), 106) AS \'106\',
 9        CONVERT(VARCHAR, GETDATE(), 107) AS \'107\',
10        CONVERT(VARCHAR, GETDATE(), 108) AS \'108\',
11        CONVERT(VARCHAR, GETDATE(), 109) AS \'109\',
12        CONVERT(VARCHAR, GETDATE(), 100) AS \'100\',
13        CONVERT(VARCHAR, GETDATE(), 120) AS \'120\',
14        CONVERT(VARCHAR, GETDATE(), 121) AS \'121\',
15        CONVERT(VARCHAR, GETDATE(), 126) AS \'126\',
16        CONVERT(VARCHAR, GETDATE(), 130) AS \'130\';
17 
18 
19 --创建uniqueidentifier类型的唯一值
20 SELECT NEWID() AS Id
21 --ISNULL(c1,c2)
22 SELECT ISNULL(ParentId,\'########\'),* FROM dbo.Module
23 --isdate(exp)判断exp是否为有效日期
24 SELECT ISDATE(\'2018-12-11 12:2:1\')
25 --ISNUMERIC(c1)判断c1是否是数字,是则返回1,否返回0
26 SELECT ISNUMERIC(\'1\') 是,ISNUMERIC(\'a\') 否

 4.流程控制语句

 1 --begin...end语句块
 2 BEGIN
 3 
 4     SELECT *
 5     FROM dbo.Role;
 6 
 7 END;
 8 --if...else语句
 9 IF 1 > 4
10     SELECT *
11     FROM dbo.Role;
12 ELSE
13     SELECT *
14     FROM dbo.FlowInstance;
15 --简单case表达式
16 SELECT CASE ActivityType WHEN 2 THEN \'qqq\' ELSE \'www\' END ss ,* FROM  dbo.FlowInstance
17 --搜索case表达式
18 SELECT CASE  WHEN ActivityType>2 THEN \'qqq\'ELSE \'www\' END ss ,* FROM  dbo.FlowInstance
19 
20 --waitfor语句
21 WAITFOR DELAY \'00:00:03\';
22 SELECT *
23 FROM dbo.Role;
24 --在下午八点查询输出
25 WAITFOR TIME \'20:00:00\';
26 SELECT *
27 FROM dbo.Form;
28 --while语句
29 DECLARE @sum INT,
30         @i INT;
31 SET @i = 0;
32 SET @sum = 0;
33 WHILE @i <= 100
34 BEGIN
35     SET @i = @i + 1;
36     IF ((@i % 2) = 0)
37         CONTINUE;
38     SET @sum = @sum + @i;
39     IF (@i > 50)
40         BREAK;
41 END;
42 PRINT \'1-50中的奇数和为\' + CONVERT(CHAR(6), @sum);

 

以上是关于sqlserver常用函数的主要内容,如果未能解决你的问题,请参考以下文章

常用Javascript代码片段集锦

nodejs常用代码片段

sh Bash的代码片段

配置 VScode 编辑器 (前端篇)

JS常用代码片段-127个常用罗列-值得收藏

36个工作中常用的JavaScript函数片段