sql转换日期格式(sql转换为日期格式)
本文目录一览:
- 1、SQL:利用STR_TO_DATE(string, format_mask)将文本型数据更改为日期型数据
- 2、将SQL查询出的日期更改格式
- 3、sql字符串转换成日期
- 4、SQL 怎么把DD-MM-YYYY格式的转换成YYYY/MM/DD?
SQL:利用STR_TO_DATE(string, format_mask)将文本型数据更改为日期型数据
1、创建测试表,含datetime类型的字段;
sql转换日期格式(sql转换为日期格式)
sql转换日期格式(sql转换为日期格式)
create table test_datetime(id int,dt datetime(2));
2、插入测试数据;
insert into test_datetime values(1,'2019-03-05 01:53:55.63');
insert into test_datetime values(2,'2019-03-05 01:42:32.22');
insert into test_datetime values(3,'2019-03-05 01:12:21.11');
3、查询表中记录,可以发现是到毫秒;
select from test_datetime t;
4、编写sql,将datetime字段,到秒;
select t., FROM_UNIXTIME(floor(unix_timestamp(dt))) b from test_datetime t;
可以发现新字段,已到秒。
select CONVERT(varchar(10), CONVERT(date, '2021/2/2'), 111)
函数介绍:STR_TO_DATE(string, format_mask),将文本转换成日期型。
string:对应的文本数据,如“1/1/2017 0:00”;“August 10 2017”;“‘20140422154706’”
format_mask:是根据前面的文本数据(string),输入对应的文本数据格式;
下面举出相关例子:
SELECT STR_TO_DATE('1/1/2017 0:00','%c/%d/%Y %H:%i');
运行结果:2017-01-01 00:00:00
SELECT STR_TO_DATE('1-1-2017 02:00','%c-%d-%Y %H:%i');
运行结果:2017-01-01 02:00:00
SELECT STR_TO_DATE('112017 02:00','%c%d%Y %H:%i');
运行结果:2017-11-20 02:00:00
SELECT STR_TO_DATE('August 10 2017','%M %d %Y');
运行结果:2017-08-10
从上面的例子我们看出,这个函数还是比较简单的,要做的就是对对应的string写出对应的匹配表达式就好了。
注意:
在面对不同的string文本的时候,需要使用不同的表达方式。
如月份是:August,则只能用 %M来匹配;当月份是数字时可以用%c或%m来匹配;
如小时是:24小时计时时只能用%H或者%k,12小时计时则需要用%h;
等等...以后有再用到的会再补充上。
将SQL查询出的日期更改格式
1、创建测试表,含datetime类型的字段;
create table test_datetime(id int,dt datetime(2));
2、插入测试数据;
insert into test_datetime values(1,'2019-03-05 01:53:55.63');
insert into test_datetime values(2,'2019-03-05 01:42:32.22');
insert into test_datetime values(3,'2019-03-05 01:12:21.11');
3、查询表中记录,可以发现是到毫秒;
select from test_datetime t;
4、编写sql,将datetime字段,到秒;
select t., FROM_UNIXTIME(floor(unix_timestamp(dt))) b from test_datetime t;
可以发现新字段,已到秒。
sql字符串转换成日期
1、创建测试表,含datetime类型的字段;
create table test_datetime(id int,dt datetime(2));
2、插入测试数据;
insert into test_datetime values(1,'2019-03-05 01:53:55.63');
insert into test_datetime values(2,'2019-03-05 01:42:32.22');
insert into test_datetime values(3,'2019-03-05 01:12:21.11');
3、查询表中记录,可以发现是到毫秒;
select from test_datetime t;
4、编写sql,将datetime字段,到秒;
select t., FROM_UNIXTIME(floor(unix_timestamp(dt))) b from test_datetime t;
可以发现新字段,已到秒。
select CONVERT(varchar(10), CONVERT(date, '2021/2/2'), 111)
函数介绍:STR_TO_DATE(string, format_mask),将文本转换成日期型。
string:对应的文本数据,如“1/1/2017 0:00”;“August 10 2017”;“‘20140422154706’”
format_mask:是根据前面的文本数据(string),输入对应的文本数据格式;
下面举出相关例子:
SELECT STR_TO_DATE('1/1/2017 0:00','%c/%d/%Y %H:%i');
运行结果:2017-01-01 00:00:00
SELECT STR_TO_DATE('1-1-2017 02:00','%c-%d-%Y %H:%i');
运行结果:2017-01-01 02:00:00
SELECT STR_TO_DATE('112017 02:00','%c%d%Y %H:%i');
运行结果:2017-11-20 02:00:00
SELECT STR_TO_DATE('August 10 2017','%M %d %Y');
运行结果:2017-08-10
从上面的例子我们看出,这个函数还是比较简单的,要做的就是对对应的string写出对应的匹配表达式就好了。
注意:
在面对不同的string文本的时候,需要使用不同的表达方式。
如月份是:August,则只能用 %M来匹配;当月份是数字时可以用%c或%m来匹配;
如小时是:24小时计时时只能用%H或者%k,12小时计时则需要用%h;
等等...以后有再用到的会再补充上。
您查看一下convert的帮助就知道了。
120或者121的格式是YYYY-MM-DD
而您这个格式是日月年的格式,使用105
SELECT convert(datetime,'30-03-2011',105)
SQL 怎么把DD-MM-YYYY格式的转换成YYYY/MM/DD?
1、创建测试表,含datetime类型的字段;
create table test_datetime(id int,dt datetime(2));
2、插入测试数据;
insert into test_datetime values(1,'2019-03-05 01:53:55.63');
insert into test_datetime values(2,'2019-03-05 01:42:32.22');
insert into test_datetime values(3,'2019-03-05 01:12:21.11');
3、查询表中记录,可以发现是到毫秒;
select from test_datetime t;
4、编写sql,将datetime字段,到秒;
select t., FROM_UNIXTIME(floor(unix_timestamp(dt))) b from test_datetime t;
可以发现新字段,已到秒。
select CONVERT(varchar(10), CONVERT(date, '2021/2/2'), 111)
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系 836084111@qq.com 删除。