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提供了大量的函数, 但是在一些常见的如, 字符串拆分, 字符提取,过滤等没有对应的处理, 本帖主要收集一些常见的函数, 整理如下: ------------------------ ...
随机推荐
- android( java) 处理 null 和 预防空指针异常(NullPointerException) 的一些经验。
概述: 在实际编码中总是会遇到 空指针异常 ,本文总结了一些处理空指针的个人经验. 原则: 尽早的检查,尽早的失败. 比如: 通过intent传参到新的目标 activity,而且一定需要这个参数,那 ...
- azkaban在centos下的部署安装
azkaban 是一个用Java开发的开源调度工具workflow. 下面介绍具体安装过程,我这里使用的版本是3.43.0,使用的是solo运行模式. 编译 git clone https://git ...
- HAVANA 团队简介
在Ensembl 下载的gtf 文件中,会有一部分来源自 HAVANA havana 的全称叫做 human and vertebrate analysis and annotation, 是sag ...
- 找出相似的图片--C#
请先参考我写到java这章 原理讲解 参考Neal Krawetz博士的这篇文章, 实现这种功能的关键技术叫做"感知哈希算法"(Perceptual Hash Algorithm) ...
- 在linux中安装字体
https://blog.csdn.net/wangxintong_1992/article/details/81194896
- swagger netframework webapi
参考:https://blog.csdn.net/wjk343977868/article/details/47086137
- vue跨域代理配置
实际:http://a.com/b.php 代理:http://localhost/b.php 配置config/index.js proxyTable: { '/api': { target:'ht ...
- iOS开发-- 一个苹果证书如何多次使用
苹果的开发者账号限制开发者证书只能有5个,我们开发过程中遇到超过5个人需要真机调试的情况,如何解决这个问题呢? 有两种方式可以解决问题: 1. Revoke原来的证书----不推荐 将以前的证书“re ...
- android高级---->Handler的原理
andriod提供了Handler来满足线程间的通信,上次在更新UI的时候也提到过Handler的使用,关于Handler的基本使用,参见博客(android基础---->子线程更新UI).今天 ...
- CentOS6.5安装JDK8
上传JDK源码包,我用的jdk-8u144-linux-x64.tar.gz.解压它 tar -zxvf jdk-8u144-linux-x64.tar.gz 更改环境变量 vim /etc/prof ...