oracle 字符串类型的8位数字想转换成日期格式

风吹那年都夏天 程序员  2016-08-31 11:48:44
我想把表中,身份证号码的出生年月日取出来,转成日期类型的数据,更新到这张表的另一个字段‘生日’中去。
sql语句如下:
update tb t set t.birthday_date=to_date(substr(t.id_card,7,8),'YYYY/MM/DD) where
t.birthday_date is null and t.id_card='452623194902290918';
为何执行的时候就报错: “文字与格式字符串不匹配”?
是因为,to_date在使用时,括号里的第一个参数必须是写死的吗?
...全文
2674 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ghx287524027 2016-08-31
引用 6 楼 qq_35412013 的回复:
我知道怎么错了。 比如说我截出来的字符串是 ‘19920606’ 这是八位 但是我指定的日期格式是 ‘ yyyy/mm/dd ’ 这是十位。
所以就报错了。 怎么能在我截出来的字符串里加上两个 正斜杠呢?

你把格式改成 ‘yyyymmdd’ 就可以了,这个斜杠只是一个日期的显示格式问题,如下:
回复
我知道怎么错了。 比如说我截出来的字符串是 ‘19920606’ 这是八位 但是我指定的日期格式是 ‘ yyyy/mm/dd ’ 这是十位。 所以就报错了。 怎么能在我截出来的字符串里加上两个 正斜杠呢?
回复
ghx287524027 2016-08-31
你确定1949年2月份有29天?是这得问题,你可以改个小于29的日子试试
回复
引用 2 楼 js14982 的回复:
YYYYMMDD 应该 'YYYYMMDD' ,你的原语句也只是一个单引号




这是 生日字段里的数据 年月日都是用 正斜杠 隔开的。 我更新的时候不用指定日期格式吗? 比如yyyy-mm-dd yyyy/mm/dd
回复
引用 1 楼 js14982 的回复:
to_date(substr(t.id_card,7,8),'YYYY/MM/DD) 改成 to_date(substr(t.id_card,7,8),'YYYYMMDD)
报错呢: 指定月份的日期无效
回复
js14982 2016-08-31
YYYYMMDD 应该 'YYYYMMDD' ,你的原语句也只是一个单引号
回复
js14982 2016-08-31
to_date(substr(t.id_card,7,8),'YYYY/MM/DD) 改成 to_date(substr(t.id_card,7,8),'YYYYMMDD)
回复
引用 7 楼 ghx287524027 的回复:
[quote=引用 6 楼 qq_35412013 的回复:] 我知道怎么错了。 比如说我截出来的字符串是 ‘19920606’ 这是八位 但是我指定的日期格式是 ‘ yyyy/mm/dd ’ 这是十位。 所以就报错了。 怎么能在我截出来的字符串里加上两个 正斜杠呢?
你把格式改成 ‘yyyymmdd’ 就可以了,这个斜杠只是一个日期的显示格式问题,如下: [/quote] 恩。你说的对,是我这个身份证号码不正确。
回复
相关推荐
ORACLE判断哪儿儿写数据字符串类型字段不能转换成日期格式
做93学社项目的时候,...百度出的的oracle函数有错,修改了半天,不多说,直接上函数: create or replace function is_DATE(datevar in varchar2) return Varchar2 is Result Varchar2(1); datetmp Date; begin S
数据库Oracle 数字字符日期之间的相互转换
数据类型转换分为俩种 。 隐式数据类型转换:当源数据的类型和目标数据的类型不同的时候,如果没有转换函数,就会发生隐式转换,也称自动转换。 对于直接赋值转换: 对于表达式赋值: 隐式转换...
Oracle和Sql 日期格式字符串格式相互转换
日期格式转换为字符类型Oracle 类型日期格式转换字符串类型1.date 转换为 字符串to_char(日期,”转换格式” ) 即把给定的日期按照“转换格式转换转换格式:表示year的:y 表示年的最后一 yy 表示年的最后2...
oracle 字符串日期转指定格式日期,Oracle和Sql 日期格式字符串格式相互转换
日期格式转换为字符类型Oracle 类型日期格式转换字符串类型1.date 转换为 字符串to_char(日期,”转换格式” ) 即把给定的日期按照“转换格式转换转换格式:表示year的:y 表示年的最后一 yy 表示年的最后2...
oracle 如何判断一个字符串能否转换数字
oracle里面没有sql server里面的类似函数is_number来判断能否转换数字,怎么办?本文给出答案。
oracle日期字符串的互相转换
1、to_date:将字符类型按一定格式转化为日期类型 select to_date('2021-02-24 10:10:10', 'yyyy-MM-dd hh24:mi:ss') from dual; 输出结果:2021-02-24 10:10:10 2、to_char:将日期类型按一定格式转化为字符...
oracle中to_date详细用法示例(oracle日期格式转换)
TO_DATE格式(以时间:2007-11... //日期转化为字符串 select to_char(sysdate,’yyyy’) as nowYear from dual; //获取时间的年 select to_char(sysdate,’mm’) as nowMonth from dual; //获取时间的月 selec
Oracle字符串转换成int类型数字的函数是什么?
cast(字段名 as int) 或者 to_num(字段名) 补充: to_date(字段名)转日期 to_num(字段名)转数字 to_char(字段名)转字符串
easyexcel 日期类型 convert_[Oracle 专题] SQL 日期数字字符串,运算、转换
日期1、日期基本写法:2、当前日期,实际上sysdate可以理解为函数,返回当前系统时间:返回当前时间戳,不常用:3、日期加一天、减一天:日期加一小时,(如果是分钟的话,1/24/60):日期加一个月、减一个月、加一年...
Oracle中的日期字符串互相转换以及格式
#Oracle中的日期字符串互相转换以及格式化 TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两年 显示值:07 yyy three digits 三年 显示值:007 yyyy four digits 四
oracle 字符串转为数字排序
select * from user order by to_number(dept_id) asc 转载于:https://www.cnblogs.com/hxun/p/11458251.html
oracle字符串转换数字(复杂的)
最近用到了将Oracle数据库中某个字符类型的字段值转换数字并保存至另一个新字段,Oracle自带有ToNumber函数,但需要说明的是这个函数只能转换字符串格式是正确数字的情况,也就是一旦字符串为空,或者有特殊字符,...
Oracle日期字符串格式化函数,位数不足前面加0,一位数字显示两格式数字为定长
格式化函数 函数 返回类型 描述 例子 ...把时间戳转换成字串 to_char(current_timestamp, 'HH12:MI:SS') to_char(interval, text) text 把时间间隔转为字串 to_char(interval'15h 2m 12s',
oracle 报“无效数字”异常和“ORA-01830: 日期格式图片在转换整个输入字符串之前结束”
oracle 报“无效数字”异常和“ORA-01830: 日期格式图片在转换整个输入字符串之前结束”
Oracle时间一串数字转为日期格式
js中接收到后台返回的json字符串中的日期类型的字段都变成了一串数字,例如:1500341149000。所以我们需要将这个串格式化形如:2017-07-18 09:25:49. 1、首先在js中加入格式化函数 //封装转换函数 Date....
Oracle中和Java中的字符串转换为时间格式(常用方式)
注意:待转换字符串转换格式必须为同一类型格式,并且月份和分钟不可以都使用mm或者MM,即使大小写不同也不可以 举例: --12小时制,即字符串中的代表小时的数字HH不允许大于12 Select to_date('...
Oracle日期类型转换格式
日期转换成字符串时,可以按新的格式显示。 如格式YYYY-MM-DD HH24:MM:SS表示“年-月-日 小时:分钟:秒”。Oracle日期类型是包含时间在内的。 主要的日期格式字符的含义如下表所示: 代码 ...
ORACLE 判断字符型能否转换成日期型 ORA-01847 ORA-01843
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow也欢迎大家转载本篇文章...分享知识,造福人民,实现我们中华民族伟大复兴!   ... ORACLE 判断字符
oracle数字转为字符串
oracle数字转为字符串.SQL> select ename,to_char(sal,'9999.000') salary from emp;ENAME SALARY---------- --------------------SMITH 808.000ALLEN 1608.000SQL> select ename,to_char(sal,'$...
ORACLE如何将6时间转换为时分秒格式
今天在使用一个表的时候,该表保存时间为“120526”这样的字符串表示“12:05:26”这样的时间。给用户返回要和另外一个日期字段一起合成一个时间格式了一下,采用如下的语句处理,这样会比较容易一些。记录下来...
Oracle数据库时间与字符串转换
Oracle数据库时间与字符串转换    oracle时间与字符串转换 Year:   yy two digits 两年 显示值:07   yyy three digits 三年 显示值:007   yyyy four digits 四年 显示值:2007   ...
oracle产生随机数字、随机字符串、随机日期
ORACLE 如何产生一个随机数:DBMS_RANDOM –1、小数( 0 ~ 1) select dbms_random.value from dual ; –2、指定范围内的小数 ( 0 ~ 100 ) select dbms_random.value(0,100) from dual ;–3、指定范围内的整数 ( 0 ~...
oracle 英文简写的日期数值型日期字符串
1.把英文简写的日期月份转成数字: select to_char(to_date('01AUG','ddMM','NLS_DATE_LANGUAGE = American'),'MMdd') from dual; 2.把数字的时间转英文简写的时间 select to_char(to_date('0108', 'ddMM'),...
SQL学习笔记七函数 数字日期类型转换,空值处理,case
ROUND():四舍五入 ROUND(A,B)A是要处理的数,B是精确到小数点后第几 LEN():计算字符串长度 LOWER()、UPPER():转小写、大写 LTRIM():字符串左侧的空格去掉 RTRIM():字符串右侧的空格去掉 SUBSTRING(string,start_...
oracle日期转换8位,oracle 日期计算
to_date 是将字符型转为日期型的函数,一般使用 yyyy-mm-dd hh24:mi:ss格式,当没有指定时间部分时,则默认时间为 00:00:00dual 表为sys用户的表,这个表仅有一条记录,可以用于计算一些表达式,如果有好事者用 sys ...
FFmpegAndroidDemo.zip
ffmpeg-3.3.1移植到android平台
光模块基础知识
光模块内部发射与接收的专业讲解,利于新手快速开发。
android 登陆界面例子
android 登陆界面例子 可以直接运行的
信息安全等级保护管理办法(公通字[2007]43号)
信息安全等级保护管理办法(公通字[2007]43号)
Qt图形视图框架详解
介绍Qt中的Graphics View Framework,涉及View、Scene、Item的关系,如何自定义QGraphicsItem、处理Item之间的关联、如何布局及定义自己的布局Item、如何变幻Item、如何应用动画、如何处理拖放、如何给Item应用图形效果,提供拼图游戏、画板两个有用的实例。 通过本课程的学习,能够掌握Qt Graphics View Framework的基本应用,使用图形视图框架开发需要丰富的GUI效果的应用软件以及需要维护大量图元的、对图形界面层次要求较高的应用。
发帖
基础和管理
创建于2007-09-28

1.7w+

社区成员

Oracle 基础和管理
申请成为版主
帖子事件
创建了帖子
2016-08-31 11:48
社区公告
暂无公告