发表于2021年1月4日2021年1月4日 作者 laozizhu
本文介绍GBaase 8a数据库集群内置的从字符串转日期的函数to_date语法和使用例子,大部分兼容Oracle语法。
目录导航
Toggle语法说明参数样例常用的中文格式:YYYY-MM-DD HH24:MI:SS带毫秒:YYYY-MM-DD HH24:MI:SS.FF斜杠分隔符带AM/PM2位的年份:YY一年内的天数:DDD参考相似功能反向功能相关文章:
语法
TO_DATE(string,format)
说明
将字符串 string 格式化成 format 类型的日期。
参数
如下是支持的参数列表,只兼容部分Oracle的参数。
模板描述/-:.分隔符,输出的年月日都是-HH一天的小时数 (01-12)HH12一天的小时数 (01-12)HH24一天的小时数 (00-23)MI分钟 (00-59)SS秒 (00-59)AM or A.M. or PM or P.M.正午标识,都是大写YYYY年(4和更多位)YY年的后两位MM月份 (01-12)DDD一年里的日子(001-366)DD一个月里的日子(01-31)FF[n]毫秒,默认是6位精度,1<=n<=9
样例
常用的中文格式:YYYY-MM-DD HH24:MI:SS
gbase> select to_date('2021-02-04 11:15:16','YYYY-MM-DD HH24:MI:SS') d;
+---------------------+
| d |
+---------------------+
| 2021-02-04 11:15:16 |
+---------------------+
1 row in set (Elapsed: 00:00:00.00)
带毫秒:YYYY-MM-DD HH24:MI:SS.FF
gbase> select to_date('2021-02-04 11:15:16.987654321','YYYY-MM-DD HH24:MI:SS.FF') d;
+----------------------------+
| d |
+----------------------------+
| 2021-02-04 11:15:16.987654 |
+----------------------------+
1 row in set (Elapsed: 00:00:00.00)
gbase> select to_date('2021/02/04 11:15:16.987654321','YYYY/MM/DD HH24:MI:SS.FF') d;
+----------------------------+
| d |
+----------------------------+
| 2021-02-04 11:15:16.987654 |
+----------------------------+
1 row in set (Elapsed: 00:00:00.00)
斜杠分隔符
gbase> select to_date('2021/02/04 11:15:16.987654321','YYYY/MM/DD HH24:MI:SS.FF') d;
+----------------------------+
| d |
+----------------------------+
| 2021-02-04 11:15:16.987654 |
+----------------------------+
1 row in set (Elapsed: 00:00:00.00)
带AM/PM
小时必须用HH格式,且原始字符串必须带AM/PM字样。否则结果可能错误。
gbase> select to_date('2021-02-04 11:15:16 PM','YYYY-MM-DD HH:MI:SS PM') d;
+---------------------+
| d |
+---------------------+
| 2021-02-04 23:15:16 |
+---------------------+
1 row in set (Elapsed: 00:00:00.00)
gbase> select to_date('2021-02-04 11:15:16 PM','YYYY-MM-DD HH:MI:SS AM') d;
+---------------------+
| d |
+---------------------+
| 2021-02-04 23:15:16 |
+---------------------+
1 row in set (Elapsed: 00:00:00.00)
2位的年份:YY
默认是当前的20XX年。
gbase> select to_date('21-02-04 11:15:16 PM','YY-MM-DD HH:MI:SS AM') d;
+---------------------+
| d |
+---------------------+
| 2021-02-04 23:15:16 |
+---------------------+
1 row in set (Elapsed: 00:00:00.00)
一年内的天数:DDD
gbase> select to_date(123,'DDD');
+--------------------+
| to_date(123,'DDD') |
+--------------------+
| 2021-05-03 |
+--------------------+
1 row in set (Elapsed: 00:00:00.00)
参考
相似功能
GBase 8a数据库函数str_to_date将文本按指定格式转化为日期
反向功能
GBase 8a将日期转字符串to_char函数功能介绍和样例
GBase 8a数据库函数date_format将日期格式化成指定格式的文本
Post Views: 4,895
相关文章:
南大通用GBase 8a和周week有关的函数和文章汇总
南大通用GBase 8a数据库函数从日期转为天 to_days和反向从天转成日期from_days
南大通用GBase 8a OLAP分析函数group by rollup使用样例
南大通用GBase 8a通过LEAST函数返回参数列表里的最小值,与Min的区别
南大通用GBase 8a字符串函数bit_length的用法和例子
南大通用GBase 8a将日期转字符串to_char函数功能介绍和样例
南大通用GBase 8a数字在二进制,八进制,10进制,16进制之间转换函数CONV介绍和例子
南大通用GBase 8a 模糊查询和正则函数regexp_replace、regexp_like
南大通用GBase 8a函数INSTR的使用样例
南大通用GBase 8a进制相关类型转换的函数汇总