Jako TableAID
v TableA
neexistuje , dotaz používá sloupec z TableB
. Dotaz je tedy stejný jako:
delete from TableB
where id in (
select TableB.TableAID
from TableA
where GUID = 'fdjkhflafdhf'
)
Takže v podstatě to dělá:
delete from TableB
where id in (TableAID)
Pokud používáte poddotazy, je nejlepší při odkazování zmínit názvy tabulek. Následující BUDE vyvolá výjimku:
delete from TableB
where id in (
select TableA.TableAID
from TableA
where TableA.GUID = 'fdjkhflafdhf'
)
Dále bych použil alias, abychom věděli, na který dotaz odkazujeme:
delete from TableB
where id in (
select a.TableAID
from TableA a
where a.GUID = 'fdjkhflafdhf'
)