测品娱乐
您的当前位置:首页sqlserver------对日期格式的查询(将日期转化为字符串,并格式化)

sqlserver------对日期格式的查询(将日期转化为字符串,并格式化)

来源:测品娱乐
sqlserver------对⽇期格式的查询(将⽇期转化为字符串,并格式

化)

对⽇期格式的模糊查询:

需要借助convent 函数将⼀种数据类型的表达式转换为另⼀种数据类型的表达式,直接进⾏查询的时候都可以查询出但是 1 不起左右,,使⽤2019_01的话查不出来

select * from dbo.tbmdKaoQingInfo where YearMonth like '%2019_1%' select * from dbo.tbmdKaoQingInfo where YearMonth like '%2019%'

如下图:

这也不⾏

select * from dbo.tbmdKaoQingInfo where YearMonth like '%2019-1%'

也不⾏

select * from dbo.tbmdKaoQingInfo where YearMonth like '%2019-01%'

建议使⽤ convert 进⾏转化⼀下,年⽉⽇就都有⽤了CAST 和 CONVERT

将某种数据类型的表达式显式转换为另⼀种数据类型。CAST 和 CONVERT 提供相似的功能。使⽤ CAST:CAST ( expression AS data_type )

使⽤ CONVERT:CONVERT (data_type[(length)], expression [, style])

select * from dbo.tbmdKaoQingInfo where CONVERT(varchar,YearMonth,120) like '%2019-01%'

⽇期格式样式,借以将 datetime 或 smalldatetime 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型);或者字符串格式样式,借以将 float、real、money 或 smallmoney 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar或 nvarchar 数据类型)。

SQL Server ⽀持使⽤科威特算法的阿拉伯样式中的数据格式。

在表中,左侧的两列表⽰将 datetime 或 smalldatetime 转换为字符数据的 style 值。给 style 值加 100,可获得包括世纪数位的四位年份(yyyy)。

查询⼩例⼦:其中

convert(varchar(10),字段名,转换格式) GetDate( ) 返回系统⽬前的⽇期与时间

SELECT CONVERT(varchar(100), GETDATE(), 0): 05 16 2011 10:57AMSELECT CONVERT(varchar(100), GETDATE(), 1): 05/16/11SELECT CONVERT(varchar(100), GETDATE(), 2): 11.05.16SELECT CONVERT(varchar(100), GETDATE(), 3): 16/05/11

SELECT CONVERT(varchar(100), GETDATE(), 4): 16.05.11SELECT CONVERT(varchar(100), GETDATE(), 5): 16-05-11SELECT CONVERT(varchar(100), GETDATE(), 6): 16 05 11SELECT CONVERT(varchar(100), GETDATE(), 7): 05 16, 11SELECT CONVERT(varchar(100), GETDATE(), 8): 10:57:46

SELECT CONVERT(varchar(100), GETDATE(), 9): 05 16 2011 10:57:46:827AMSELECT CONVERT(varchar(100), GETDATE(), 10): 05-16-11SELECT CONVERT(varchar(100), GETDATE(), 11): 11/05/16SELECT CONVERT(varchar(100), GETDATE(), 12): 110516

SELECT CONVERT(varchar(100), GETDATE(), 13): 16 05 2011 10:57:46:937SELECT CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967

SELECT CONVERT(varchar(100), GETDATE(), 20): 2011-05-16 10:57:47

SELECT CONVERT(varchar(100), GETDATE(), 21): 2011-05-16 10:57:47.157SELECT CONVERT(varchar(100), GETDATE(), 22): 05/16/11 10:57:47 AMSELECT CONVERT(varchar(100), GETDATE(), 23): 2011-05-16SELECT CONVERT(varchar(100), GETDATE(), 24): 10:57:47

SELECT CONVERT(varchar(100), GETDATE(), 25): 2011-05-16 10:57:47.250SELECT CONVERT(varchar(100), GETDATE(), 100): 05 16 2011 10:57AMSELECT CONVERT(varchar(100), GETDATE(), 101): 05/16/2011SELECT CONVERT(varchar(100), GETDATE(), 102): 2011.05.16SELECT CONVERT(varchar(100), GETDATE(), 103): 16/05/2011

SELECT CONVERT(varchar(100), GETDATE(), 104): 16.05.2011SELECT CONVERT(varchar(100), GETDATE(), 105): 16-05-2011SELECT CONVERT(varchar(100), GETDATE(), 106): 16 05 2011SELECT CONVERT(varchar(100), GETDATE(), 107): 05 16, 2011SELECT CONVERT(varchar(100), GETDATE(), 108): 10:57:49

SELECT CONVERT(varchar(100), GETDATE(), 109): 05 16 2011 10:57:49:437AMSELECT CONVERT(varchar(100), GETDATE(), 110): 05-16-2011

SELECT CONVERT(varchar(100), GETDATE(), 111): 2011/05/16SELECT CONVERT(varchar(100), GETDATE(), 112): 20110516

SELECT CONVERT(varchar(100), GETDATE(), 113): 16 05 2011 10:57:49:513SELECT CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547

SELECT CONVERT(varchar(100), GETDATE(), 120): 2011-05-16 10:57:49SELECT CONVERT(varchar(100), GETDATE(), 121): 2011-05-16 10:57:49.700SELECT CONVERT(varchar(100), GETDATE(), 126): 2011-05-16T10:57:49.827SELECT CONVERT(varchar(100), GETDATE(), 130): 16 05 2011 10:57:49:513AMSELECT CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM

常⽤的是 :SELECT CONVERT(varchar(100), GETDATE(), 23)

因篇幅问题不能全部显示,请点此查看更多更全内容