Как мне ... удалить строки из двух таблиц в одном SQL-запросе
Привет друг,
у меня есть два имени таблиц
1.
CREATE TABLE [Bill] ( [Id] [int] IDENTITY(1,1) NOT NULL, --Primary key [Bill_No] [int] NOT NULL, [Date] [datetime] NOT NULL )
2.
CREATE TABLE [BILL_ITEMS] ( [Id] [int] IDENTITY(1,1) NOT NULL,--Primary key [Bill_Id] [int] NOT NULL, --Foreign key [Product_Id] [int] NOT NULL )
1. 'Счет' три столбец с именем 'идентификатор', 'Bill_No', 'дата'
2. 'BILL_ITEMS' также имеет три столбца 'Id', 'Bill_Id', 'Product_Id' в этой таблице столбец 'Bill_Id' совпадает с столбцом 'Bill_No', который находится в таблице 'BILL'.
теперь я хочу удалить записи счетов, я не могу использовать ключи отношений (каскадный метод)
поэтому я хочу удалить записи по одному запросу или с помощью метода подзапроса. мой код приведен ниже, но я столкнулся с ошибкой.
Что я уже пробовал:
DELETE FROM Bill WHERE Bill_No EXISTS IN= ( SELECT B.Id, B.Bill_No , B.Date, I.Id, I.Bill_Id, I.Product_Id FROM Bill AS B, BILL_ITEMS AS I WHERE B.Bill_No = I.Bill_Id AND B.Date >= CAST('2017-02-08 12:07:40.330' AS Date) AND B.Date <= CAST('2017-02-19 12:09:13.560' AS Date) )