列出了所有租来的工具,这些工具已经租了3年多了,但还没有归还。删除这些工具
我有一个有几张表的数据库。其中一些是RENTAL_ORDERLINE、STOCK_TOOL和CATALOGUE。
RENTAL_ORDERLINE有进出工具的日期,并通过foreign key链接到STOCK_TOOL。
库存工具通过外键链接到目录(其中包含Tool_Name)。
我想要创建一个数据清理脚本,其中列出了所有已经租来的工具,但3年多没有返回,并删除这些工具。我做了一个select语句,它输出要删除的工具,但不能在其中使用delete语句:
select rental_orderline.tool_id, catalogue.tool_name
from rental_orderline right outer join stock_tool
on stock_tool.tool_id = rental_orderline.tool_id
right outer join catalogue
on catalogue.catalogue_number = stock_tool.catalogue_number
where rental_orderline.date_out < add_months(sysdate, -36)
and rental_orderline.date_in is null;)
where rental_orderline.date_out < add_months(sysdate, -36)
and rental_orderline.date_in is null;TOOL_ID TOOL_NAME
7 Mallet
8钻
9锯
我需要删除同一个查询中的输出。
delete from stock_tool
where tool_id = 7, 8, 9;有什么想法吗?
发布于 2012-11-28 17:25:33
有点像
delete from stock_tool where tool_id IN (
select rental_orderline.tool_id
from rental_orderline right outer join stock_tool
on stock_tool.tool_id = rental_orderline.tool_id
right outer join catalogue
on catalogue.catalogue_number = stock_tool.catalogue_number
where rental_orderline.date_out < add_months(sysdate, -36)
and rental_orderline.date_in is null;)
where rental_orderline.date_out < add_months(sysdate, -36)
and rental_orderline.date_in is null
);https://stackoverflow.com/questions/13610846
复制相似问题