SQLSERVER使用小总结之--时间转换

SQLSERVER使用小总结之–时间转换

相信很多初学者会有这样的烦恼,就是在进行数据类型转换的时候很麻烦,花费了很多时间去各种搜索,百度,结果就是得不到你要的数据类型,特别是时间类型和时间格式的字符串类型进行转换。我在19年刚开始着手sqlserver的工作的时候也是这样的烦恼,花了很多时间,各种折腾,就是没有得到自己想要的,最终功夫不负有心人,对于20年的我来说相对得心应手了,现在给大家分享下我的一些心得。

首先明白数据的类型

在进行转换的时候要明白你的数据是怎样的类型,甚至长度的大小是多少。原因呢,其实很简单,明白了数据类型之后,你就可以很好地进行转换,长度的大小主要是为了防止由于长度过短,造成转换后数据显示不全,也就是所说的数据少了,或者专业 的说法就是只显示相应长度的字符串,其他的没显示出来吧。
接下来,给大家罗列下在进行时间的转换的时候要注意、或者要先弄清楚其他主要的问题:
1. 数据转换的函数有哪些:
cast()
cast(字段 as 要改成的数据类型)
convert()
convert(要改成的数据类型,字段)
这两个函数也是我个人用的比较多的函数。
2.时间类型:
一般SQL Server使用 Date 表示日期,time表示时间,使用datetime和datetime2表示日期和时间。平时使用的也就这几种类型。
3.时间的字符串格式
时间大概有如下的字符串显示格式:

CONVERT(varchar, getdate(), 120 )  -- 2013-02-17 13:37:54

 replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','') -- 20130217133828

CONVERT(varchar(12) , getdate(), 111 )  -- 2013/02/17

CONVERT(varchar(12) , getdate(), 112 )  -- 20130217

CONVERT(varchar(12) , getdate(), 102 )  --2013.02.17

CONVERT(varchar(12) , getdate(), 101 )  --02/17/2013

CONVERT(varchar(12) , getdate(), 103 )  --17/02/2013

CONVERT(varchar(12) , getdate(), 104 )  --17.02.2013

CONVERT(varchar(12) , getdate(), 105 )  --17-02-2013

CONVERT(varchar(12) , getdate(), 106 )  --17 02 2013

CONVERT(varchar(12) , getdate(), 107 )  --02 17, 2013

CONVERT(varchar(12) , getdate(), 108 )  --13:42:50

CONVERT(varchar(12) , getdate(), 109 )  --02 17 2013  

CONVERT(varchar(12) , getdate(), 110 )  --02-17-2013

CONVERT(varchar(12) , getdate(), 113 )  --17 02 2013 1

CONVERT(varchar(12) , getdate(), 114 )  --13:42:24:743

真正的转换

例子如下:
Select convert(varchar(100),CONVERT(datetime, ‘2019-01-31 17:51:19’, 20),23)
备注:先转换成时间类型datetime,再转换成自己要的格式。
也就是先把字符串转换成时间格式的字符串,然后再根据自己要的时间格式再做最后的显示。

最后:时间格式的转换就完成了,希望小编的处女之作可以对你有所有帮助!也希望能够和大家一起进步,期待各位的留言哦!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值