MSSQL中常用函数的使用技巧

1. 常用字符串函数

1.1 LEN()函数

LEN()函数可以返回字符串的长度。其中,字符串参数可以是字符型数据、二进制或文本数据。例如:

SELECT LEN('Hello World!');

-- 输出结果为:12

在使用LEN()函数时要注意一点,当参数为NULL时,LEN()函数返回值为0,而不是NULL。

1.2 LEFT()和RIGHT()函数

LEFT()和RIGHT()函数可以截取字符串的左侧或右侧的指定长度的字符串。例如:

SELECT LEFT('Hello World', 5);

-- 输出结果为:Hello

SELECT RIGHT('Hello World', 5);

-- 输出结果为:World

LEFT()和RIGHT()函数还可以和其他函数一起使用,例如结合LEN()函数获取字符串长度,截取不同位置的字符串:

SELECT LEFT('Hello World', LEN('Hello World') - 1);

-- 输出结果为:Hello Worl

SELECT RIGHT('Hello World', LEN('Hello World') - 6);

-- 输出结果为:World

1.3 SUBSTRING()函数

SUBSTRING()函数可以返回指定位置和长度的子串。其中,第一个参数为要截取的字符串,第二个参数为开始截取的位置,第三个参数为截取的长度。例如:

SELECT SUBSTRING('Hello World', 7, 5);

-- 输出结果为:World

SUBSTRING()函数还可以和其他函数一起使用,例如结合CHARINDEX()函数获取子串的位置:

SELECT SUBSTRING('Hello World', CHARINDEX(' ', 'Hello World') + 1, 5);

-- 输出结果为:World

2. 常用日期和时间函数

2.1 GETDATE()函数

GETDATE()函数可以返回当前系统日期和时间。例如:

SELECT GETDATE();

-- 输出结果类似于:2022-05-17 15:52:23.330

2.2 DATEADD()函数

DATEADD()函数可以在日期或时间上增加指定的时间间隔。其中,第一个参数为增加的时间间隔,第二个参数为要增加的时间单位,第三个参数为要增加的日期或时间。例如:

SELECT DATEADD(month, 1, GETDATE());

-- 输出结果为:2022-06-17 15:52:23.330

上面的例子中,DATEADD()函数将当前日期加上一个月。

2.3 DATEDIFF()函数

DATEDIFF()函数可以计算两个日期之间的时间间隔。其中,第一个参数为要计算的时间单位,第二个参数为起始时间,第三个参数为结束时间。例如:

SELECT DATEDIFF(day, '2022-05-01', '2022-05-17');

-- 输出结果为:16

上面的例子中,DATEDIFF()函数计算了从5月1日到5月17日的天数。

3. 常用数学函数

3.1 ABS()函数

ABS()函数可以返回一个数的绝对值。

SELECT ABS(-10);

-- 输出结果为:10

3.2 ROUND()函数

ROUND()函数可以对一个数进行四舍五入。其中,第一个参数为要进行四舍五入的数,第二个参数为要保留的小数位数。例如:

SELECT ROUND(3.14159, 2);

-- 输出结果为:3.14

3.3 RAND()函数

RAND()函数可以返回一个0到1之间的随机数。

SELECT RAND();

-- 输出结果为:类似于0.91538256

4. 常用聚合函数

4.1 COUNT()函数

COUNT()函数可以对一列进行计数。例如:

SELECT COUNT(*)

FROM students;

-- 输出结果为:100

上面的例子中,COUNT()函数统计了students表中的行数。

4.2 SUM()函数

SUM()函数可以对一列进行求和。例如:

SELECT SUM(score)

FROM students;

-- 输出结果为:9500

上面的例子中,SUM()函数计算了students表中score列的总和。

4.3 AVG()函数

AVG()函数可以对一列进行求平均值。例如:

SELECT AVG(score)

FROM students;

-- 输出结果为:95.00

上面的例子中,AVG()函数计算了students表中score列的平均值。

4.4 MAX()和MIN()函数

MAX()和MIN()函数可以返回一列中的最大值和最小值。例如:

SELECT MAX(score), MIN(score)

FROM students;

-- 输出结果为:100, 90

上面的例子中,MAX()和MIN()函数分别返回了students表中score列的最大值和最小值。

总结

本文介绍了MSSQL中常用的一些函数,包括字符串函数、日期和时间函数、数学函数、聚合函数等,并且提供了使用这些函数的实例。熟练掌握这些函数可以让我们更加高效地进行数据操作和计算,提高工作效率。

数据库标签