Posted: Tue Dec 11, 2007 4:43 pm Post subject: Удаление из пользовательской таблицы используя sub-query
В системе создана пользовательская таблица и таблица с текстами. Пытаюсь удалить записи нелеьной давности.
Code:
DELETE FROM ztexts
WHERE ebeln IN
( SELECT ebeln
FROM zorders
WHERE flag = 'X'
AND date <= l_date ).
Это работает, когда используется только одно поле ebeln.
Однако, таблицы ключ состоит из нескольких полей.
Code:
DELETE FROM ztexts
WHERE (ebeln, ebelp, ver) IN
( SELECT ebeln, ebelp, ver
FROM zorders
WHERE flag = 'X'
AND date <= l_date ).
Знаю, что то же самое можно сделать с использованием внутренней таблицы, но в данный момент мне нужно использовать именно команды OpenSQL. Это возможно?
DELETE FROM ztexts
WHERE EXISTS
(
SELECT ebeln
FROM zorders
WHERE flag = 'X'
AND date <= l_date
AND ebeln EQ ztexts~ebeln
AND ebelp EQ ztexts~ebelp
AND ver EQ ztexts~ver
).
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG. SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG. Every effort is made to ensure content integrity. Use information on this site at your own risk.