我有一个复杂的 SQLite 查询,我可以使用一些帮助来制作。我有 5 张桌子,每张桌子有 3 列。表 1 到 4 的 col3 是表 5 col1 的外键。
我需要在表 1 到 4 中选择 col3 的不同值,如果 table5 的 col1 不在选择结果中,则删除 table5 的 col1。
Table1
col1 col2 col3
a b 1
c d 2
e f 1
Table2
col1 col2 col3
g h 2
i j 3
k l 4
m n 2
Table3
col1 col2 col3
b a 4
d c 3
o p 8
q r 1
Table4
col1 col2 col3
s t 2
u v 3
w x 4
Table5
col1 col2 col3
1 aa bb
2 cc dd
3 ee ff
4 gg hh
5 ii jj
6 kk ll
7 mm nn
8 oo pp
表 1 到表 4 的不同集合是。1 2 3 4 8
从 table5 中删除的记录将是 5 6 7
据我所知,正在使用此代码收集选择集...
SELECT [table1].[col3], 1 as tablenumber
FROM [table1]
GROUP BY [table1].[col3_ID]
UNION ALL
SELECT [table2].[col3_ID], 2 as tablenumber
FROM [table2]
GROUP BY [table2].[col3_ID]
UNION ALL
SELECT [table3].[col3], 3 as tablenumber
FROM [table3]
GROUP BY [table3].[col3]
UNION ALL
SELECT [table4].[col3], 4 as tablenumber
FROM [table4]
GROUP BY [table4].[col3]
UNION ALL
我想在同一操作中从 table5 中删除记录。