使用内部联接sqlplus时删除

使用内部联接sqlplus时删除,sql,oracle,inner-join,sqlplus,Sql,Oracle,Inner Join,Sqlplus,我一直在努力解决如何在RENTALLINE_1中删除RENTALLINE_ID中的行,然后从RENTALLINE_1中删除RENTALLINE_ID。我有一个select语句,它查找我要删除的确切值。它会查找超过3年的记录。我正在使用带有命令行界面的SQLPlus select rentalline_1.rentalline_ID, rentalline_1.tool_store_id, rentalline_1.rental_id, rentallin

我一直在努力解决如何在RENTALLINE_1中删除RENTALLINE_ID中的行,然后从RENTALLINE_1中删除RENTALLINE_ID。我有一个select语句,它查找我要删除的确切值。它会查找超过3年的记录。我正在使用带有命令行界面的SQLPlus

select rentalline_1.rentalline_ID,
       rentalline_1.tool_store_id,
       rentalline_1.rental_id,
       rentalline_1.qty,
       rental_1.datein
from rental_1
  inner join rentalline_1 on rental_1.rental_id = rentalline_1.rental_id
where MONTHS_BETWEEN (SYSDATE, DATEIN) > (36)

提前感谢您的帮助

我无法在oracle数据库上进行测试,但我希望

DELETE rental_1, rentalline_1
from rental_1
  inner join rentalline_1 on rental_1.rental_id = rentalline_1.rental_id
where MONTHS_BETWEEN (SYSDATE, DATEIN) > (36)
你也可以用它来荡秋千

DELETE from
( SELECT * 
from rental_1
  inner join rentalline_1 on rental_1.rental_id = rentalline_1.rental_id
where MONTHS_BETWEEN (SYSDATE, DATEIN) > (36) )

您可以向数据库添加约束吗?如果有外键约束,如:

ALTER TABLE rentalline_1 ADD CONSTRAINT fk_rental FOREIGN KEY (rental_id) REFERENCES rental_1 (rental_id) ON DELETE CASCADE;

然后删除
rentalline\u 1
表中的行将导致
rentalline\u 1
中的相应行被自动删除。

感谢您的回复,我在第1行“删除rentalline\u 1,rentalline\u 1”中收到错误“命令未正确结束”。你不知道为什么吗?谢谢你一开始误读了这篇文章,但我认为这会解决问题,因为我可以从出租表中删除,并错过使用我认为的内部连接?谢谢,谢谢你的回复,但我先尝试了下面的答案,但我相信你的答案也适用于任何有类似问题的人:)再次感谢