【SQL】SQL常用函数整理

SQL常用函数

1. 聚合函数

(1) AVG 返回组中值的平均值。空值将被忽略

语法

SELECT AVG(column_name) FROM table_name

(2) MAX 返回表达式的最大值

(3) MIN 返回表达式的最小值

(4) SUM 返回表达式中所有值的和,或只返回 DISTINCT 值。

SUM 只能用于数字列。空值将被忽略

(5) COUNT 函数功能 返回组中项目的数量

SQL COUNT(column_name) 语法
COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入):

SELECT COUNT(column_name) FROM table_name;

SQL COUNT(*) 语法
COUNT(*) 函数返回表中的记录数:

SELECT COUNT(*) FROM table_name;

SQL COUNT(DISTINCT column_name) 语法
COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目:

SELECT COUNT(DISTINCT column_name) FROM table_name;  

(6) FIRST 函数返回指定的列中第一个记录的值。

SELECT FIRST(column_name) FROM table_name;

(6) LAST 函数返回指定的列中最后一个记录的值。

SELECT LAST(column_name) FROM table_name;

2. 时间和日期函数

(1) DATEADD 在向指定日期加上一段时间的基础上,返回新的datetime值

语法

DATEADD ( datepart , number, date ) 样例

SELECT DATEADD(day, 21, pubdate) AS timeframe FROM titles 

(2) DATEPART 返回代表指定日期的指定日期部分的整数

语法
DATEPART ( datepart , date ) 样例

SELECT DATEPART(month, GETDATE()) AS 'Month Number' 

(3) DAY 返回代表指定日期的天的日期部分的整数

语法
DAY ( date )

(4) GETDATE 按 datetime 值的标准内部格式返回当前系统日期和时间

语法
GETDATE ( )

(5) GETUTCDATE 返回表示当前 UTC 时间(世界时间坐标或格林尼治标准时间)的

datetime 值。当前的
UTC 时间得自当前的本地时间和运行
SQL Server 的计算机操作系统中的时区设置 语法 GETUTCDATE()

(6) MONTH 函数功能

返回代表指定日期月份的整数
语法 MONTH ( date ) 样例

 SELECT "Month Number" = MONTH('03/12/1998') 

(7) YEAR 返回表示指定日期中的年份的整数

语法
YEAR ( date )

(8) Now 返回当前时间,以datetime为格式

语法
Now()

3. 数学函数

(1) ABS 返回给定数字表达式的绝对值

语法
ABS ( numeric_expression )

(2) RAND 返回 0 到1 之间的随机float 值

语法
RAND ( [ seed ] ) :seed是给出种子值或起始值的整型表达式(tinyint、smallint 或 int)

(3) ROUND 返回数字表达式并四舍五入为指定的长度或精度

语法
ROUND ( numeric_expression , length [ , function ] )

ROUND(X): 返回参数X的四舍五入的一个整数。
mysql> select ROUND(-1.23);
        -> -1

ROUND(X,D): 返回参数X的四舍五入的有 D 位小数的一个数字。如果D为0,结果将没有小数点或小数部分。
mysql> select ROUND(1.298, 1);
        -> 1.3

(4) FLOOR 返回小于或等于所给数字表达式的最大整数

语法
FLOOR ( numeric_expression )

(5) SIGN 返回给定表达式的正 (+1)、零 (0) 或负 (-1) 号

语法
SIGN ( numeric_expression )

(6) SQUARE 返回给定表达式的平方

语法
SQUARE ( float_expression )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值