在 ORACLE中 如何将以下字符串 转换成 yyyy-mm-dd 格式?

www.zhiqu.org     时间: 2024-06-16
最笨的方法就是截取加拼凑:用substr(str,8,4)+'-'+substr(str,4,3)+'-'+substr(str,1,2)

select to_char(to_TIMESTAMP_TZ('26/Sep/2014:06:42:11 +0800','dd/MON/yyyy:hh24:mi:ss TZHTZM','NLS_DATE_LANGUAGE = American'),'yyyy-mm-dd') from dual;

oracle数据库中存的格式是YYYYMMDDHHmmss的字符串,怎么转换成YYYY-MM-DD HH:mm:ss~

1、创建测试表,
create table test_date_conv(id varchar2(20),v_date varchar2(200));


2、插入测试数据;
insert into test_date_conv values(1, 20190101122359);
insert into test_date_conv values(2, 20190115132359);
insert into test_date_conv values(3, 20190125052359);
insert into test_date_conv values(4, 20190125122359);
insert into test_date_conv values(5, 2019013119359);
commit;

3、查询表中全量数据;select t.*, rowid from test_date_conv t;

4、编写语句,转换成成YYYY-MM-DD HH:mm:ss格式;
select t.*, to_char(to_date(v_date,'yyyymmddhh24miss'),'yyyy-mm-dd hh24:mi:ss') v2 sec from test_date_conv t;

比如将当前日期转换为格式为yyyy-mm-dd hh24:mi:ss的日期:
SQL语句:to_char(sysdate,'yyyy-mm-dd hh24:mi:ss')
假设现在是2015年5月25日晚上10点37分23秒。
转换之后的时间是:2015-05-25 22:37:23


#贺享胃# sql server 日期转换,将mm dd yyyy转换为yy - mm - dd,字符类型是nvarchar. -
(19540922408): CONVERT() 函数 106转120 http://www.w3school.com.cn/sql/func_convert.asp

#贺享胃# oracle中如何把多列字符串转换为'字符串1','字符串2'... -
(19540922408): 你是想把多行变1行吧 select wm_concat(name) from table

#贺享胃# 在pl/sql里面怎样将字符型的'10 - 1月 - 13'转换成date型'yyyy - mm - dd'? -
(19540922408): select '10-1月-13' dd,to_char(to_date('10-1-13','dd-mm-yy'),'yyyy-mm-dd') a from dual

#贺享胃# 在oracle中如何将查出来的数据(汉字)转换为拼音,数据库已经是别人建好的,有没有什么好方法 -
(19540922408): 楼主您好 没有特别好的方法 如果数据特别巨大的话,建议写程序转换 拿java为例,即使高级语言,用pingyin4j读出来,多音字返回数组电脑是没办法识别的.我们只能暂时先让它返回第一个音,比如长返回["chang","zhang"],只能默认chang音,“长大”也就错了.比如“万俟卨”电脑是肯定读不对的.

#贺享胃# oracle 字符串 数字 -
(19540922408): 字符串转为数字用to_number函数,例如 to_number('1210.73')就得到1210.73 数字转为字符串用to_char函数,例如 to_char(1210.73)就得到'1210.73' 两个函数都可以设定转换的格式,例如 to_char(1210.73, '$9,999.00')就得到'$1,210.73' 第二个问题:select count(*) from ...

#贺享胃# 2011年09月05日 15时36分07秒怎么转换成oracle中date格式 存入数据库
(19540922408): 这个应该有日期处理函数.转换的话可以通过应用程序format化,或者直接在插入之前用oracle日期函数处理再行插入.oracle date格式为:在ORACLE中默认日期格式为'DD-MON-YY',例如'01-JAN-98'.转换字符串为日期使用ORACLE内部函数to_date().如果开发语言是java的话日期格式化处理函数有dateformat,simpledateformat,VB有formatdatetime函数等.

#贺享胃# oracle数据库的sysdate类型怎么转换为字符串 -
(19540922408): ORACLE支持带to_char函数的sql语句,读出时可以用to_char(date字段名,'YYYY-MM-DD HH24:MI:SS')这样得到'2010-01-15 18:50:30'格式的时间字符串,你也可以随意用各种组合来得到你需要的格式字符串,例如'YYYY/MM/DD HH24:MI'就得到了'2010/01/15 18:50'

#贺享胃# oracle 如何将字符串转换为一个数据集! -
(19540922408): declare v_str1 VARCHAR2(20); --字符串 v_str2 VARCHAR2(20); --每次截取出的部分 v_pos NUMBER; --判断逗号位置 BEGIN v_str1:=''1,2,3,4,5,6'; LOOP v_pos:=INSTR(v_str1,','); --获取字串内第一个逗号的位置 IF v_pos!=0 THEN --判...

#贺享胃# 怎样将Oracle多行转换成字符串?
(19540922408): 在做一些比较复杂的DB数据导出时,有时会要求“将不固定的多行数据组合成一个字符串返回”. 例子:ISV Portal中就遇到了类似的情况,要求对于每一个APP,返回其...

#贺享胃# 关于oracle中替换字符串的问题,高手请进 -
(19540922408): oracle有一个trim函数可以把空格去掉,至于to_single_byte不能对大于4000字符的字符串处理 这个问题可不可以把源自段用substr函数切分到几个合适长度的字段(临时表里或可以的话直接在原表添加新字段),然后再用to_single_byte,处理好后update回去.数据量大的话不建议用update操作,会产生大量的行迁移情况,最好是直接抽数据往一个新表里更新.