表A(id,name)
1 tom
2 jim
3 zz
21 tt
41 ss
表B(id,relation)
1 1,3
2 2,41
表B中的relation存的是A表中的id值的组合,A,B表中id均为int型的主键
期望获得表A的结果为:
id name
21 tt
即期望获得在A表中存在而在B表中的relation列中不存在的记录
表A(id,name)
1 tom
2 jim
3 zz
21 tt
41 ss
表B(id,relation)
1 1,3
2 2,41
表B中的relation存的是A表中的id值的组合,A,B表中id均为int型的主键
期望获得表A的结果为:
id name
21 tt
即期望获得在A表中存在而在B表中的relation列中不存在的记录
谢谢楼上指正,呵呵,当时没考虑太多,其实思路是一样的,改一下:
[code="sql"]SELECT A.*
FROM A
WHERE NOT EXISTS (SELECT 1
FROM B
WHERE instr(',' || B.relation || ',', ',' || A.id|| ',' , 1) > 0)[/code]