SQL函数汇总大全
聚合函数对一组值计算后返回单个值。除了count(统计项数)函数以外,其他的聚合函数在计算式都会忽略空值(null)。所有的聚合函数均为确定性函数。即任何时候使用一组相同的输入值调用聚合函数执行后的返回值都是相同的,无二义性.
1:AVG(表达式)
功能:计算表达式平均值
2:SUM(表达式)
功能:计算表达式之和
3:COUNT(表达式)
功能:计算满足表达式的记录数目
4:MAX(表达式)
功能:计算表达式最大值
5:MIN(表达式)
功能:计算表达式最小值
6. CAST、CONVERT都可以执行数据类型转换。
在大部分情况下,两者执行同样的功能,不同的是CONVERT还提供一些特别的日期格式转换,而CAST没有这个功能。
语法: CAST (expression AS data_type [ (length ) ])
功能: 将表达式按照指定的类型(长度)转换并输出
示例:
select cast (19.666 as decimal(4,2))----19.67,返回4位十进制数值,保留小数点后2位
7:convert
语法:CONVERT(data_type(length), data_to_be_converted, style)
功能:将日期时间数据按照指定的类型和长度转换并输出
示例:
select convert(varchar(10),getdate(),121)----2017-11-24,按年-月-日输出10位长度日期
select convert (int,‘232’)----232,转换格式
PS:参数 style的详细说明表见下附图片
8:getdate()
功能:获取当前日期
9:Year(date数据)、Month(date数据)、Day(date数据)
功能:获取date数据的年、月、日 信息
10:DATEPART(datepart , date数据)
功能:返回日期/时间的单独部分,比如年、月、日、小时、分钟等等
示例:
select datepart(dy, getdate())----328(本年第328天)
11:dateadd (datepart, number, date数据)
功能:将某个日期加上一个特定的时间间隔值后返回datetime数据类型的值
示例:(PS:具体datepart 参数说明详见右表)
select dateadd(YY,10,getdate())----今天往后加十年
12:datediff (datepart, startdate, enddate)
功能:将使用enddate减以startdate的值,如果startdate晚于enddate将返回负值。执行结果如果超出整数范围将提示错误。
示例:
select datediff(day,'2011-11-11','2012-12-12')----397
13:len( string_expression )
功能:获取字符串的长度(字符数),但不包括右边的空格。
示例:select len(' xxxxx')----5,左侧有空格
14:space(integer_expression)
功能:获取空格。这里的integer_expression为指示空格个数的正整数。
示例:select ('Ran' +space(2)+'dy')--------xxx xx
15:清除左边空格LTRIM
示例:select LTRIM(‘ xxxx’)----xxxx,消除左侧空格
16:清除右边空格RTRIM
示例:select RTRIM(‘xxxx ’)----xxxx,消除右侧空格
17:截取左边字符串 LEFT
示例:select left('123456789',3) --输出 123
18:截取右边字符串 RIGHT
示例:select right('123456789',3) --输出 789
19:截取指定位置字符串SUBSTRING
语法:substring( expression, start,length)
说明:
start:指定子字符串开始位置的整数
length:一个正整数,指定要返回的expression的字符数或字节数。如果length为负,则会返回错误。
示例:
select substring(‘hello’,1,2) --从第1位开始输出2个字符串, he
20:REPLICATE
功能:按照指定的整数次数,重复生成一个字符串形式的表达式,结果为字符串。
语法:replicate( character_expression, integer_expression )
示例: print 'Who?'+REPLICATE(CHAR(10)+CHAR(13),2) +'Randy'
PS: CHAR(10)+CHAR(13) 功能为换行、回车
21:REPLACE
功能:用另一个字符串值替换出现的所有指定字符串值。
语法:REPLACE ( string_expression1 , string_expression2 , string_expression3 )
说明:
string_expression1:要搜索的字符串表达式;
string_expression2:被替换的字符串
string_expression3:替换字符串
示例:SELECT REPLACE('abcde', 'abc', 'xxx') --xxxde
NULL值处理函数
SQL Server中处理Null值的两个有用函数:
22:ISNULL函数
功能:判断表达式,为NUll时返回指定值,不为NUll时,返回表达式的值
示例:
SELECT ISNULL(‘randy’,0)--不为NULL时返回表达式’Randy’;
SELECT ISNULL(null,999)-----为NULL时,返回指定值 999
23:COALESCE函数
功能:返回一系列表达式中第一个不为NULL的值.
表达式的顺序可以按照优先级排列,即按照优先级依次判断表达式是否为NULL
示例:
SELECT COALESCE(NULL, 'randy', 'zzz', null)----’Randy’
SELECT COALESCE(优先事件1,优先事件2,优先事件3,优先事件4)
26: 一些实用数学函数
SELECT FLOOR(1.666)--------1 向下取整
SELECT CEILING(0.414)------1 向上取整
SELECT ROUND(1.414,1)-----1.400 四舍五入至小数点后一位
SELECT dbo.trunc(6.35)-----6 截取整数位
SELECT ABS(-4.414)---------4 取绝对值
SELECT SIGN(-4.414)--------返回-1.000 取符号
*****取日期函数*************
SELECT dbo.BOY(GETDATE())--取本年第一天
SELECT dbo.BOD(GETDATE())--取当前日期
SELECT dbo.BOQ(GETDATE())--取本季度第一天
SELECT dbo.BOM(GETDATE())--取本月第一天
SELECT dbo.BOW(GETDATE())--取本周第一天-------周一
----------------------------------------------------------
SELECT dbo.EOY(GETDATE())--取本年最后一天
SELECT dbo.EOD(GETDATE())--取当前日期
SELECT dbo.EOQ(GETDATE())--取本季度最后一天
SELECT dbo.EOM(GETDATE())--取本月最后一天
SELECT dbo.EOW(GETDATE())--取本周最后一天-------周日
SELECT DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,GETDATE()),120)+‘1’)
--- 取本月最后一天
SQL 查询随机函数用法:
select * from (select rn.*, row_number() over(order by dbms_random.value) from (
SELECT XXX as 客户号
FROM XXX
WHERE XXX = XXX
AND ROWNUM < ) rn)
where rownum =
SQL函数汇总大全的更多相关文章
- SQL函数说明大全
一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下表给出了T-SQL函数的类别和描 ...
- SQL函数说明大全 (转)
一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下表给出了T-SQL函数的类别和描 ...
- [转] SQL函数说明大全
from http://www.cnblogs.com/moss_tan_jun/archive/2010/08/23/1806861.html 一旦成功地从表中检索出数据,就需要进一步操纵这些数据, ...
- SQL函数汇总【精选篇】
1.绝对值 SQL:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) S:select ceiling(-1.00 ...
- SQL函数汇总(MySQL教材)
1.SQL重复记录查询的几种方法 https://www.cnblogs.com/firstdream/p/5826238.html 2.SQL两列字段,合并为一个字符串,中间加符号 https:// ...
- MySQL常用SQL/函数汇总(持续更新)
自动生成ROWNUN SELECT (@rowNO := @rowNo+1) AS rowno,a.uuid FROM (SELECT * FROM h_log_proc) a,(SELECT @ro ...
- sql函数大全
sql函数大全 一.内部函数 1.内部合计函数 1)COUNT(*) 返回行数 2)COUNT(DISTINCT COLNAME) 返回指定列中唯一值的个数 3)SUM(COLNAME/EXPRESS ...
- SQL查询语句大全集锦
SQL查询语句大全集锦 一. 简单查询 简单的Transact-SQL查询只包括选择列表.FROM子句和WHERE子句.它们分别说明所查询列.查询的 表或视图.以及搜索条件等. 例如,下面的语句查询t ...
- sql经典语句大全
SQL Server提供了大量的函数, 但是在一些常见的如, 字符串拆分, 字符提取,过滤等没有对应的处理, 本帖主要收集一些常见的函数, 整理如下: ------------------------ ...
随机推荐
- 【iCore1S 双核心板_FPGA】例程十六:基于SPI的ARM与FPGA通信实验
实验现象: 核心代码: int main(void) { int i,n; ]; ]; HAL_Init(); system_clock.initialize(); led.initialize(); ...
- Springboot学习笔记(五)-条件化注入
前言 将Bean交给spring托管很简单,根据功能在类上添加@Component,@Service,@Controller等等都行,如果是第三方类,也可以通过标有@Configuration的配置类 ...
- react如何监听路由url变化
"componentWillReceiveProps" "shouldComponentUpdate" "componentWillUpdate&qu ...
- IOC容器特性注入第四篇:容器初始化
IOC容器,就是把各种服务都注入到容器里,想要什么就去拿什么,不仅解决服务类和接口类的耦合度还可以提高性能方便管理. 这里封装一个接口类和一个实现类 1.IContainerManager接口 pub ...
- [Linux] 在 Linux CLI 使用 ssh-keygen 生成 RSA 密钥
RSA 是一种公钥加密算法,在 1977 年由麻省理工学院的 Ron Rivest, Adi Shamir, Leonard Adleman 三人一起提出,因此该算法命名以三人姓氏首字母组合而成. S ...
- [Python] 当猎头遇上 Guido van Rossum
Guido van Rossum 收到猎头的邀请函和他的回复. 猎头 你好,Guido! 我在 Google 搜索中无意间看见你的简历.看起来你精通 Python.我非常愉快能够得到你的回复并了解你的 ...
- 在 Ubuntu 14.04 服务器上部署 Hexo 博客
版权声明:本文由宋秉金 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/241080001487926962 来源:腾云阁 ...
- The app references non-public selector in MyApp : id
id<FBGraphUser>friend id<FBGraphUserExtraFields>user 应该使用 [user objectForKey:@"id ...
- 在最新的Power BI Desktop中使用报表主题功能
报表主题的工作原理 Power BI Desktop中,增加了万众期待的报表主题色功能(预览),如下图: 要使用这个功能,请先在官网下载并安装最新版的Power BI Desktop.安装成功后在&q ...
- D - Brave Game
十年前读大学的时候,中国每年都要从国外引进一些电影大片,其中有一部电影就叫<勇敢者的游戏>(英文名称:Zathura),一直到现在,我依然对于电影中的部分电脑特技印象深刻. 今天,大家选择 ...