楼上正解,
创新互联2013年开创至今,是专业互联网技术服务公司,拥有项目成都网站制作、成都网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元海林做网站,已为上家服务,为海林各地企业和个人服务,联系电话:13518219792
一种方法是使用TO_CHAR(字段,'时间日期格式')和TO_DATE(字段,'时间日期格式')来在时间和字符串格式中相互转换,以达到自己希望要的日期格式,这种方式较为灵活
还有一种方法,是一次性改变数据库对date类型数据的输出
控制语句为
alter session set nls_date_format='yyyy年MM月dd日'
这种方式更改之后整个数据库的时间日期格式均变为'yyyy年MM月dd日'的格式,不需要在SQL语句中再转换了
oracle中,日期转换函数有很多,常用命令如下:
to_char()命令将时间戳转换为用户规定的日期格式,如:
SELECT TO_CHAR(sysdate,'YYYY-MM-DD hh24:mi:ss') FROM DUAL;
语法:TO_CHAR(X [,format])
说明:将X按format格式转换成字符串。X可以是日期或者数字或时间戳,format是一个规定了X采用何种格式转换的格式字符串
to_date()命令可以将一个日期格式的字符串转换成date类型数据,如:
SELECT TO_DATE('2014-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss') FROM DUAL;
语法:TO_DATE(C [,format])
说明:将符合format指定的特定日期格式的字符串C转换成DATE类型的数据
TO_TIMESTAMP()函数可以将一个时间格式的字符串转换成时间戳
SELECT TO_TIMESTAMP('2014-06-20 12:11:11','YYYY-MM-DD HH24:MI:SS') from dual;
语法:TO_TIMESTAMP(C [,format])
说明:将字符串C转换为一个时间戳数据类型
---to_char()命令可以将时间戳转换成字符串:
select to_char( TO_TIMESTAMP('2014-06-20 12:11:11','YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') from dual;
当需要进行两个日期的比较时,不需要比较时间,可采用trunc()命令来截取日期
SQL select to_char( trunc(sysdate), 'YYYY-MM-DD HH24:MI:SS') from dual;
SQL select to_char( sysdate, 'YYYY-MM-DD HH24:MI:SS') from dual;
比较两句的运行结果,可以看到差别。
1.将字符串类型转换为数字类型,这个方法直接用to_number()进行转换,具体的语法是to_number(STR)可以进行转换。
2.将数字类型转换成字符串类型的,这个转换使用to_char(),它有点像上面的to_number()模式,999表示相同的内容。
3.将日期类型转换成字符串类型,这种方法其实也用的是to_char(),就是将日期格式的转换成自己想要的格式类型的,这种方法比较个性化一点。
4. 下面的代码将日期类型转换为一种常见的字符串类型,这种类型更常见,并且是一种更完整的字符串格式。
5.将字符串类型转换成日期类型。这种转换方式用to_date()进行转换。用法也比较简单,转换的日期格式也是自己自定义的。
6.完成效果图。
实现的方法和详细的操作步骤如下:
1、第一步,将字符串类型转换为数字类型。此方法使用到“to number()”直接转换,见下图,转到下面的步骤。
2、第二步,执行完上面的操作之后,数字类型将转换为字符串类型。此转换使用“to_char()”,代码见下图,转到下面的步骤。
3、第三步,执行完上面的操作之后,日期类型将转换为字符串类型。实际上,此方法还使用“to_char()”,将日期格式转换为所需的格式类型,见下图,转到下面的步骤。
4、第四步,执行完上面的操作之后,下面的代码将日期类型转换为更常见和完整的字符串格式的公共字符串类型,见下图,转到下面的步骤。
5、第五步,执行完上面的操作之后,将字符串类型转换为日期类型。此转换方法使用“to_date()”进行转换,见下图,转到下面的步骤。
6、第六步,执行完上面的操作之后,就获得了想要的结果了,见下图。这样,就解决了这个问题了。