达梦7数据库⽇期时间数据类型相关格式转换
达梦7 数据库⽇期时间数据类型相关格式转换
类型名类型描述
TIMESTAMP(P)时间戳数据类型,年⽉⽇时分秒字段,精度 P 指定了秒的精度
DATETIME存储⽇期和时间,其存储空间是固定的 8个字节,默认的数据格式是yyyy-MM-dd hh:
VARCHAR(N)最⼤字符串长度为 N 的可变长度字符串,N<=8188
INTEGER/INT精度为 10,刻度为 0 的有符号精确数字,取值范围-2[31]…2[31]-1
达梦数据库新建如下表:
列名类型值说明
DTID INT1642070485
LOGTIME VARCHAR2020-12-24 11:14:31
CRETIME DATETIME2020-12-24 11:14:31.000000
UPDTIME TIMESTAMP2020-12-24 11:14:31.580739
#建表
CREATE TABLE "DM_TSET"."TEST_DT"
(
"DTID" INT,
"LOGTIME" VARCHAR(50),
"CRETIME" DATETIME,
unix时间戳转换日期格式"UPDTIME" TIMESTAMP(6)
) ;
#插值
insert into "DM_TSET"."TEST_DT"("DTID", "LOGTIME", "CRETIME", "UPDTIME")
VALUES(1642070485, "2020-12-24 11:14:31","2020-12-24 11:14:31.000000", "2020-12-24 11:14:31.580739";
#查询查询时间转Unix时间戳秒级
select DATEDIFF(S,DATE'1970-01-01 08:00:00',LOGTIME) from DM_TSET.TEST_DT;
select DATEDIFF(S,DATE'1970-01-01 08:00:00',CRETIME) from DM_TSET.TEST_DT;
select DATEDIFF(S,DATE'1970-01-01 08:00:00',CRETIME) from DM_TSET.TEST_DT;
#返回
1608779671(类型INT)
#查询Unix时间戳(int)转时间
select DATEADD(SS,TO_NUMBER(DTID),DATE '1970-01-01 08:00:00') from DM_TSET.TEST_DT;
#返回
2022-01-13 18:41:25.000000(TIMESTAMP)
#查询时间转Unix时间戳毫秒级
select DATEDIFF(MS,DATE'1970-01-01 08:00:00',UPDTIME) from DM_TSET.TEST_DT;
#返回
数据溢出(o(╥﹏╥)o)
表达式 DATEDIFF(timeinterval,date1,date2)
允许数据类型: timeinterval 表⽰相隔时间的类型,代码为:年份 yy、yyyy 季度 qq、q;⽉份 mm、m;每年的某⼀⽇ dy、y;⽇期 dd、d;星期 wk、ww;⼯作⽇ dw;⼩时 hh;分钟 mi、n;秒 ss、s;毫秒 ms 结束

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。