oracle从含有日期和其他信息的字符串中提取日期的sql语句
比如1.“2009年6月28日张三从李四那里买的二手车”2.“2010年1月9日李四从王五那里买的二手自行车”3.“2008年12月5日王五从赵六那里买的二手电动车”这种...
比如1.“2009年6月28日张三从李四那里买的二手车”
2.“2010年1月9日李四从王五那里买的二手自行车”
3.“2008年12月5日王五从赵六那里买的二手电动车”
这种字符串,怎么将里面前头的年月日(如2009年6月28日、2010年1月9日、2008年12月5日)字符串提取出来,并且是DATE类型的数据,SQL怎么写?求大虾们指导! 展开
2.“2010年1月9日李四从王五那里买的二手自行车”
3.“2008年12月5日王五从赵六那里买的二手电动车”
这种字符串,怎么将里面前头的年月日(如2009年6月28日、2010年1月9日、2008年12月5日)字符串提取出来,并且是DATE类型的数据,SQL怎么写?求大虾们指导! 展开
2个回答
展开全部
select to_date(REGEXP_replace('2009年6月28日张三从李四那里买的二手车','(\d{3,4})年(\d{1,2})月(\d{1,2})日.+','\1/\2/\3')) "date" from dual
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select to_date(substr(regexp_replace('2009年6月28日张三从李四那里买的二手车', '[年]|[月]|[日]', '-'),
1,
instr(regexp_replace('2009年6月28日张三从李四那里买的二手车', '[年]|[月]|[日]',
'-'), '-', -1) - 1),'yyyy-mm-dd')
from dual
;
个人觉得不是最佳方法,凑合着能用,呵呵
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询