我有两个SQL查询
第一个查询会产生一些ID,如33,155,1661 ....
SELECT tal.ID
FROM CUST_TICKETS tkts, TICKETS_ASSOC_LOGS tal
WHERE tkts.TICKET_ID = tal.TICKET_ID
AND tkts.CUSTOMER_ID IN (66, 304)
通过比较上面的ID,我必须删除其他表中的数据,其中表名如'logs%'
第二个查询是
SELECT table_name, column_name
FROM cols
WHERE table_name LIKE 'LOGS_%'
AND column_name LIKE 'ID';
上面的查询将生成一些表,如LOGS_1,LOGS_3 .....
上表包含ID列,与其他表没有依赖关系
最后我想通过比较第一个查询生成的ID来删除第二个查询生成的表(LOGS_ *)中的数据
提前致谢
答案 0 :(得分:0)
你可以通过组合像..
这样的查询来简单地删除数据delete from logs where log_id in(SELECT tal.ID FROM CUST_TICKETS tkts , TICKETS_ASSOC_LOGS tal where tkts.TICKET_ID=tal.TICKET_ID and tkts.CUSTOMER_ID IN (66,304) )
logs是第二个查询生成的表名。