レンタルされているが 3 年以上返却されていないツールをすべてリストします。それらのツールを削除します
複数のテーブルを持つデータベースがあります。これらのいくつかはRENTAL_ORDERLINE
、STOCK_TOOL
およびCATALOGUE
です。
RENTAL_ORDERLINE
ツールが貸し出された日付があり、 を介して STOCK_TOOL にリンクされていforeign key
ます。
ストック ツールは、外部キーを介してカタログ (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 マレット
8 ドリル
9 のこぎり
同じクエリで出力を削除する必要があります
delete from stock_tool
where tool_id = 7, 8, 9;
何か案は?