欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

请问一个sql关联的有关问题

更新时间: 2014-01-05 02:15:22 责任编辑: Author_N1

 

请教一个sql关联的问题
sql是类似这样的
select * from table1 a LEFT JOIN table2 b ON b.id=a.code

现在是查不到数据,原因是a.code的值类似这样的‘1,2,3’ 而b.id的值只有1个 类似是‘1’  请问有什么好的解决方法吗?
sql是我大概拼的 完整的还有别的left join的语句  在线等  谢谢! 只有10分了 都给出去
--参考方法--

--分割逗号
with t1 as 
(
     select 1 c1,'1,2,3' c2 from dual 
),t2 as
(
     select 1 id,'aa' na from dual union all
     select 3 id,'bb' na from dual 
)

select t.c2,t2.na
from 
(
select distinct c1,replace(regexp_substr(c2,'[^,]+',1,level),',',' ') c2
from t1 
connect by level<=length(c2)-length(replace(c2,',',''))+1
order by c1
) t left join t2 on t.c2 = t2.id
order by t.c2


     c2    na
-------------------------
1 1 aa
2 2
3 3 bb

上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:15:22
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/7595/
本文WWW.DOC100.NET DOC100.NET版权所有。