Като TableAID
не съществува в TableA
, заявката използва колоната от TableB
. Следователно заявката е същата като:
delete from TableB
where id in (
select TableB.TableAID
from TableA
where GUID = 'fdjkhflafdhf'
)
Така че по същество прави:
delete from TableB
where id in (TableAID)
Ако използвате подзаявки, най-добре е да споменавате имената на таблиците си, когато препращате. Следните хвърля изключение:
delete from TableB
where id in (
select TableA.TableAID
from TableA
where TableA.GUID = 'fdjkhflafdhf'
)
Освен това бих използвал псевдоним, за да знаем към коя заявка се отнасяме:
delete from TableB
where id in (
select a.TableAID
from TableA a
where a.GUID = 'fdjkhflafdhf'
)