您的位置:首页 > 数据库

SQL 几个常用的函数

2015-10-15 19:15 741 查看
TRUNC()函数

1.TRUNC(for dates)

TRUNC函数为指定元素而截去的日期值。
其具体的语法格式如下:
TRUNC(date[,fmt])
其中:
date 一个日期值
fmt 日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截去
下面是该函数的使用情况:
TRUNC(TO_DATE(’24-Nov-1999 08:00 pm’,’dd-mon-yyyy hh:mi am’))
=’24-Nov-1999 12:00:00 am’
TRUNC(TO_DATE(’24-Nov-1999 08:37 pm’,’dd-mon-yyyy hh:mi am’,’hh’)) =’24-Nov-1999 08:00:00 am’


2.TRUNC(for number)

TRUNC函数返回处理后的数值,其工作机制与ROUND函数极为类似,只是该函数不对指定小数前或后的部分做相应舍入选择处理,而统统截去。
其具体的语法格式如下
TRUNC(number[,decimals])
其中:
number 待做截取处理的数值
decimals 指明需保留小数点后面的位数。可选项,忽略它则截去所有的小数部分
下面是该函数的使用情况:
TRUNC(89.985,2)=89.98
TRUNC(89.985)=89
TRUNC(89.985,-1)=80
注意:第二个参数可以为负数,表示为小数点左边指定位数后面的部分截去,即均以0记。


ROUND() 函数

ROUND 函数用于把数值字段舍入为指定的小数位数。

SQL ROUND() 语法

SELECT ROUND(column_name,decimals) FROM table_name

参数描述
column_name必需。要舍入的字段。decimals必需。规定要返回的小数位数。


RANK() 函数

排名函数,返回结果集分区内字段值的排名,

SQL RANK()语法

RANK() OVER([])

参数

partition_by_clause  将from子句生成的结果集划分为应用到RANK函数的分区。
Order_by_clause     确定将RANK值应用到分区中的行时所使用的顺序。


CAST()函数

将某种数据类型的表达式显式转换为另一种数据类型。

SQL CAST()语法

SELECT CAST(col_name AS decimal(28,2))  FROM table_name

CAST ( expression AS data_type )


聚合函数

Transact-SQL编程语言提供下列聚合函数:

1. AVG 返回指定组中的平均值,空值被忽略。
例:select prd_no,avg(qty) from sales group by prd_no

2. COUNT 返回指定组中项目的数量。
例:select count(prd_no) from sales

3. MAX 返回指定数据的最大值。
例:select prd_no,max(qty) from sales group by prd_no

4. MIN 返回指定数据的最小值。
例:select prd_no,min(qty) from sales group by prd_no

5. SUM 返回指定数据的和,只能用于数字列,空值被忽略。
例:select prd_no,sum(qty) from sales group by prd_no

6. COUNT_BIG 返回指定组中的项目数量,与COUNT函数不同的是COUNT_BIG返回bigint值,而COUNT返回的是int值。
例:select count_big(prd_no) from sales

7. GROUPING 产生一个附加的列,当用CUBE或ROLLUP运算符添加行时,输出值为1.当所添加的行不是由CUBE或ROLLUP产生时,输出值为0.
例:select prd_no,sum(qty),grouping(prd_no) from sales group by prd_no with rollup
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  函数 sql