table1:
id typeid info
1 1 asdasdfsf
2 1 asdfasdff
3 2 asasdfsdf
4 3 aasdffasdf
5 4 aasdfsdf
6 4 asdasdff
7 5 asdfasdf
table2
id typeinfo
1 1,2,3
2 1,3,4
3 1,4,5
4 1,2,3
5 1,2,3
根据table2的typeinfo查找出在table1 中的记录集Select * from table1 where id in (select typeinfofrom table2 where id=1)请高手解答
id typeid info
1 1 asdasdfsf
2 1 asdfasdff
3 2 asasdfsdf
4 3 aasdffasdf
5 4 aasdfsdf
6 4 asdasdff
7 5 asdfasdf
table2
id typeinfo
1 1,2,3
2 1,3,4
3 1,4,5
4 1,2,3
5 1,2,3
根据table2的typeinfo查找出在table1 中的记录集Select * from table1 where id in (select typeinfofrom table2 where id=1)请高手解答
Select * from table1 where typeid like '%' || (select typeinfo from table2 where id=1) || '%'
我理解是table2 tableinfo中,包含table1 tableid中的内容就显示,是这样的吗?
select distinct a.id,a.typeid,a.info
from a_1 a,a_2 b
where instr(b.typeinfo,a.typeid) > 0
where exists(
select * from t2
where instr(','||t2.typeinfo||',', ','||t1.typeid||',')>0
)
where t1.typeid in (
select c.c from t2, table(f_sep(t2.typeinfo, ',') c
)
where t1.typeid in (
select c.c from t2, table(f_sep(t2.typeinfo, ',')) c
)