1.day(date)  

 用途:获取日期是所在月的几号

 参数:date是一个可以解析为 time、date、smalldatetime、datetime、datetime2 或 datetimeoffset 值的表达式、列表达式、用户定义的变量或字符串文字

返回值:一个整数,该整数表示指定的 date 是该月份的哪一天

 

eg: 

day(getdate())  --获取当前时间是当前月份的哪一天

 扩展:

select CONVERT(VARCHAR(10),DATEADD(dd,-day(getdate())+1,getdate()),120)   --获取当月的开始日期
select CONVERT(VARCHAR(10),dateadd(dd,-day(getdate()),dateadd(m,1,getdate())),120) --获取当月的结束日期

2.DATEFIRST 

 用途:设置一周是以星期几开始

语法:SET DATEFIRST {Num}

参数:num是一个数值, 指示一周的第一天的一个整数。 可以是下列值之一。

一周的第一天是

1

星期一

2

星期二

3

星期三

4

星期四

5

星期五

6

星期六

7 (默认值,美国英语)

星期日

 eg: 

 SET DATEFIRST 1 

 注释:

(1)若要查看 SET DATEFIRST 的当前设置,请使用 @@DATEFIRST 函数。

    eg:

SELECT @@DATEFIRST 

(2)SET DATEFIRST 的设置是在执行或运行时设置,而不是在分析时设置。

(3)指定 SET DATEFIRST 对 DATEDIFF 不起作用。 DATEDIFF 始终使用星期日作为每周的第一天,以确保函数是确定性的。

3.DATEPART()

 用途: DATEPART() 函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等

语法:DATEPART(datepart,date)

 参数:date 参数是合法的日期表达式。datepart 参数可以是下列的值:

datepart 缩写
yy, yyyy
季度 qq, q
mm, m
年中的日 dy, y
dd, d
wk, ww
星期 dw, w
小时 hh
分钟 mi, n
ss, s
毫秒 ms
微妙 mcs
纳秒 ns

 eg:

SET DATEFIRST 1       --设置一周的开始为星期一
select datepart(w,getdate())

 扩展:

SET DATEFIRST 1    --设置一周的开始为星期一
select CONVERT(VARCHAR(10),getdate()-datepart(w,getdate())+1,120) --当前日前所在周的开始日期
select CONVERT(VARCHAR(10),getdate()-datepart(w,getdate())+7 ,120) --当前日前所在周的结束日期

 4.SQL中的两种数据转换方式

语法:CAST ( expression AS data_type [ ( length ) ] )
       CONVERT ( data_type [ ( length ) ] , expression [ , style ] )

参数:expression:任何有效的表达式
       data_type :目标数据类型。 这包括 xml、bigint 和 sql_variant。 不能使用别名数据类型。
       length:指定目标数据类型长度的可选整数。 默认值为 30。
       style:指定 CONVERT 函数如何转换 expression 的整数表达式。 如果 style为 NULL,则返回 NULL。 该范围是由 data_type 确定的。
返回值:转换为 data_type 的 expression。
注释:convert中data_type为日期时间类型时,style的集中类型如下表

不带世纪数位 (yy) (1)

带世纪数位 (yyyy)

标准

输入/输出 (3)

-

0 或100(1、2)

默认

mon dd yyyy hh:miAM(或 PM)

1

101

美国

1 = mm/dd/yy

101 = mm/dd/yyyy

2

102

ANSI

2 = yy.mm.dd

102 = yyyy.mm.dd

3

103

英国/法国

3 = dd/mm/yy

103 = dd/mm/yyyy

4

104

德国

4 = dd.mm.yy

104 = dd.mm.yyyy

5

105

意大利

5 = dd-mm-yy

105 = dd-mm-yyyy

6

106 (1)

-

6 = dd mon yy

106 = dd mon yyyy

7

107 (1)

-

7 = Mon dd, yy

107 = Mon dd, yyyy

8

108

-

hh:mi:ss

-

9 或109(1、2)

默认格式 + 毫秒

mon dd yyyy hh:mi:ss:mmmAM(或 PM)

10

110

美国

10 = mm-dd-yy

110 = mm-dd-yyyy

11

111

日本

11 = yy/mm/dd

111 = yyyy/mm/dd

12

112

ISO

12 = yymmdd

112 = yyyymmdd

-

13 或113(1、2)

欧洲默认格式 + 毫秒

dd mon yyyy hh:mi:ss:mmm(24h)

14

114

-

hh:mi:ss:mmm(24h)

-

20 或 120 (2)

ODBC 规范

yyyy-mm-dd hh:mi:ss(24h)

-

21 或 121 (2)

ODBC 规范(带毫秒)

yyyy-mm-dd hh:mi:ss.mmm(24h)

-

126 (4)

ISO8601

yyyy-mm-ddThh:mi:ss.mmm(无空格)

 注意

毫秒 (mmm) 的值为 0 时,不显示毫秒值。 例如,值“2012-11-07T18:26:20.000”显示为“2012-11-07T18:26:20”。

-

127(6, 7)

带时区 Z 的 ISO8601。

yyyy-mm-ddThh:mi:ss.mmmZ(无空格)

 注意

毫秒 (mmm) 的值为 0 时,不显示毫秒值。 例如,值“2012-11-07T18:26:20.000”显示为“2012-11-07T18:26:20”。

-

130 (1,2)

回历 (5)

dd mon yyyy hh:mi:ss:mmmAM

在此样式中,mon 表示完整月份名称的多标记回历 unicode 表示形式。 该值在 SSMS 的默认 US 安装中将不会正确呈现。

-

131 (2)

回历 (5)

dd/mm/yyyy hh:mi:ss:mmmAM

eg:
SELECT
GETDATE() AS UnconvertedDateTime,
CAST(GETDATE() AS nvarchar()) AS UsingCast,
CONVERT(nvarchar(), GETDATE(), ) AS 'ODBC 规范' ,
CONVERT(nvarchar(), GETDATE(), ) AS 'ODBC 规范(带毫秒' ;
GO

5.DATEDIFF()

语法:DATEDIFF(datepart,startdate,enddate)

  参数:startdate 和 enddate 参数是合法的日期表达式。

  注释:datepart 参数可以是下列的值:

datepart 缩写
yy, yyyy
季度 qq, q
mm, m
年中的日 dy, y
dd, d
wk, ww
星期 dw, w
小时 hh
分钟 mi, n
ss, s
毫秒 ms
微妙 mcs
纳秒 ns
												

SQL Server常用函数汇总的更多相关文章

  1. SQL Server 常用函数使用方法

    之前就想要把一些 SQL 的常用函数记录下来, 直到今天用到substring()这个函数,C# 里面这个方法起始值是 0,而 SQL 里面起始值是 1.傻傻分不清楚... 这篇博客作为记录 SQL ...

  2. Oracle 与Sql Server常用函数对比

    来自:http://topic.csdn.net/u/20080704/08/b2b8c42f-b0d6-4cda-98b1-6e4a279b4ff8.html 感谢楼主 函数 SQLServer和O ...

  3. SQL Server 常用函数总结

    SQL去空格函数 1.ltrim(‘内容’)--去掉字符左边的空格 代码如下 declare @str varchar(100) set @str=' ADFADF' select @str sele ...

  4. SQL Server 常用函数使用方法(持续更新)

    之前就想要把一些 SQL 的常用函数记录下来,不过一直没有实行...嘿嘿... 直到今天用到substring()这个函数,C# 里面这个方法起始值是 0,而 SQL 里面起始值是 1.傻傻分不清楚. ...

  5. sql server常用函数、常用语句

    一.常用函数 1.字符串函数 : charindex(':','abc:123')    --寻找一个字符在一段字符串中起始的位置 len('zhangsan')   --获取一段字符串的长度 lef ...

  6. Sql Server常用函数及技巧

    使用Sql Server好长时间了,今天特别想总结一下,算是回顾吧! 总结: 其实很多技巧,都是基于SQL Server自带的System Views,System Stored Procedures ...

  7. SQL Server 常用函数

    1.DATEADD 在向指定日期加上一段时间的基础上,返回新的 datetime 值. 语法 DATEADD ( datepart , number, date ) 参数 datepart 是规定应向 ...

  8. SQL SERVER常用语法汇总

    阅读目录 一.SQL分类 二.基础语句 三.sql技巧 四.(MS SQL Server)SQL语句导入导出大全 回到目录 一.SQL分类 DDL—数据定义语言(CREATE,ALTER,DROP,D ...

  9. SQL Server常用函数使用方法(学习)

    1.转载至 https://www.cnblogs.com/Brambling/p/6779434.html Substring()函数,用于截取字符串方法,三个参数 参数1:用于指定要操作的字符串 ...

随机推荐

  1. 企业信息系统集成框架(设计思路)C模式

    1.客户端.h文件 #pragma once #include<stdlib.h> //A程序员定义接口形式和调用模式 //初始化句柄 typedef int(*Init_Socket)( ...

  2. Samba Server possible problem and solving

    Configured samba server at RHEL7, problem encountered and solved. 1, yum install samba*, RHEL7 syste ...

  3. 解决异常断电导致的: CorruptSSTableException: java.io.EOFException

    问题产生 服务器重启,导致cassandra损坏,整个集群不可用.所使用的cassandra为2.1.9版本. 问题描述 运行启动命令,报错如下: DEBUG :: All segments have ...

  4. pandas DataFrame 数据处理常用操作

    Xgboost调参: https://wuhuhu800.github.io/2018/02/28/XGboost_param_share/ https://blog.csdn.net/hx2017/ ...

  5. MySQL怎样存储IP地址

    为什么要问如何存储IP 首先就来阐明一下部分人得反问:为什么要问IP得怎样存,直接varchar类型不就得了吗? 其实做任何程序设计都要在功能实现的基础上最大限度的优化性能.而数据库设计是程序设计中不 ...

  6. Spring Boot(三):logback打印日志

    springboot对logback的支持是非常好的,不需要任何配置,只需要在resource下加logback.xml就可以实现功能直接贴代码: <?xml version="1.0 ...

  7. 点滴积累【JS】---JS小功能(onmousemove鼠标移动坐标接龙DIV)

    效果: 思路: 利用onmousemove事件,然后获取鼠标的坐标,之后把DIV挨个遍历,最后把鼠标的坐标赋给DIV. 代码: <head runat="server"> ...

  8. atitit。全局变量的设计与实现 java php的异同

    atitit.全局变量的设计与实现 java php的异同 1. 超级全局(Superglobals)"变量 1 2. 全局变量和"global"关键字 1 3. 更加好 ...

  9. 老司机的应用级监控——spring?actuator

    http://mt.sohu.com/20160824/n465783118.shtml ************************************************ 1什么是sp ...

  10. java请求POST发送json格式请求

    public static String upload(String url){ try { HttpClient httpclient = new DefaultHttpClient(); Http ...