Home > Software design >  How does one write a script to delete all Orders in the database without Orderline Items?
How does one write a script to delete all Orders in the database without Orderline Items?

Time:03-04

How does one write a script to delete all Orders in the database without Orderline Items?

Normally, you would delete all Orders like this:

delete from dbo_Orders

or

delete from dbo_Orders (where Id = 'orderid')

I also have a table dbo_OrderLines, which are linked in a One-to-Many relationship. I wish to delete all the orders which have no orderlines. How do I write the query?

delete from dbo_Orders (where this order's dbo_OrderLines count is 0)

CodePudding user response:

delete t
from dbo.Orders as t
where not exists 
(
    select 1 from dbo.OrderLines as x where x.order_id = t.order_id
)

I guess. you can try something like this

  • Related