SQL-数据类型转换

SQL-数据类型转换,第1张

通过类型转换函数可以转换数据的数据类型,默认情况下SQL Server 2008 会对一些表达式进行自动转换。例如,如果char和datetime表达式、smallint和int表达式或不同长度的char表达式,则SQL Server 2008 自动对这些表达式进行转换,这种转换称为隐式转换。

CAST 和 CONVERT函数提供相似的功能。

图3,就是我们将日期转换为字符型用到的转换时间显示格式。

jingyan.baidu.com/article/09ea3ede01daecc0aede393e.html

平时为了方便存储和查询,通常会选择将时间存储为毫秒或者秒的形式。但是页面显示的时候很不直观,需要将整型数字转化成日期格式,转化方式包括下面几种:

1、秒数与Date之间的转换:selectfrom_unixtime(1388776825)

还可以定义时间格式,用法如下:

SELECTFROM_UNIXTIME(1388776825,'%Y-%m-%d%H:%m:%s')

结果:2014-01-0403:01:25

SELECT FROM_UNIXTIME(1388776825,'%Y年%m月%d')

结果:2014年1月4

2、将秒数转为Date:SELECTUNIX_TIMESTAMP('2014-03-2310:10:40')

如果想逆向转换,可以通过unix_timestamp()函数反向转换。用法如下:

SELECTUNIX_TIMESTAMP()//获取当前时间的秒数

SELECTUNIX_TIMESTAMP('2014-03-2310:10:40')//获取指定日期格式的秒数

SELECTUNIX_TIMESTAMP('2014-03-23')//获取指定日期格式的秒数

扩展资料:

一、date型换int型

SELECTUNIX_TIMESTAMP(‘2017-9-2213:54:45’)

二、int型转date型

SELECTFROM_UNIXTIME(1506059685)

需要注意的是,一个int值转换为DateTime需要从1970年1月1日0点0分0秒开始,但是必须明确,这个时间是标准时间,而不是北京时间。

数据库中数据的时间都是以标准时间为准绳的。所以必须转换到当前时间,中国是+8,可以简单的调用ToLocalTime达到效果。

sql中用convert这个函数进行数据类型转换

1.CONVERT()

函数可以用不同的格式显示日期/时间数据。

CONVERT(data_type(length),data_to_be_converted,style)

style:

100

或者

0

mon

dd

yyyy

hh:miAM

(或者

PM)

101

mm/dd/yy

102

yy.mm.dd

103

dd/mm/yy

104

dd.mm.yy

105

dd-mm-yy

106

dd

mon

yy

107

Mon

dd,

yy

108

hh:mm:ss

109

或者

9

mon

dd

yyyy

hh:mi:ss:mmmAM(或者

PM)

110

mm-dd-yy

111

yy/mm/dd

112

yymmdd

113

或者

13

dd

mon

yyyy

hh:mm:ss:mmm(24h)

114

hh:mi:ss:mmm(24h)

120

或者

20

yyyy-mm-dd

hh:mi:ss(24h)

121

或者

21

yyyy-mm-dd

hh:mi:ss.mmm(24h)

126

yyyy-mm-ddThh:mm:ss.mmm(没有空格)

130

dd

mon

yyyy

hh:mi:ss:mmmAM

131

dd/mm/yy

hh:mi:ss:mmmAM

例子:CONVERT(VARCHAR(10),GETDATE(),110)

2.CONVERT()

函数是把数据类型间的转换

例子:select

CONVERT(int,'10')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6848648.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-29
下一篇 2023-03-29

发表评论

登录后才能评论

评论列表(0条)

保存