在处理进销存单号的时候,很经常遇到日期时间格式等。现做一下笔记:
1、获取此刻的日期时间,带毫秒,如:2019-01-17 10:56:59.230
select getDate();
2、转换为090117的日期格式
select CONVERT(varchar(100),getdate(),12);
3、转换为2019-01-17的日期格式
select CONVERT(varchar(100),getdate(),23);
4、如果是字符串的,还要先将字符串转换为时间格式,再转换其他日期格式
select CONVERT(varchar(100),CAST('2019-01-17' AS datetime),23);
5、将日期转换为日期时间,不带毫秒,如:2019-01-17 00:00:00
select CONVERT(varchar(100),CAST('2019-01-17' AS datetime),20);
6、将日期转换为日期时间,带毫秒,如:2019-01-17 00:00:00.000
select CONVERT(varchar(100),CAST('2019-01-17' AS datetime),21);
7、从左边开始,截取N位,结果为My
select left('MyOrder',2);
8、从右边开始,截取N位,结果为Order
select right('MyOrder',5);
9、从右边开始,截取N位,+1,不足位数补0,一般用于订单流水号
select right('0000'+convert(varchar(10),'9999'+1),4);
10、从中间某位开始截取N位,如下,从第5位开始截取6位
select substring('001901174567',5,6);