Discussion:
DELETE with related table
(too old to reply)
R. Vince
2007-04-23 23:45:21 UTC
Permalink
I have a table (tableA), with a data field (saved as a VARCHAR in
YYYY-MM-DD). I have a second table, tableB, which has a field with an int
field which refers to the ID of tableA (or is null). I call this field
tableB.idA

I am trying to delete rows in tableA where the date is less than a specified
value AND there is no reference to said row in tableB.

But how to specify this in SQL. I tried :

DELETE FROM tableA WHERE tableA.date <'2007-01-01' and tableB.idA!=
tableA.id;

only to get the exception Unknown table 'tableB' in where clause.

Can anyone help me out here? Thanks, R. Vince
strawberry
2007-04-25 10:57:22 UTC
Permalink
On Apr 24, 12:45 am, "R. Vince" <rvince99 a t hotmail d o t com>
Post by R. Vince
I have a table (tableA), with a data field (saved as a VARCHAR in
YYYY-MM-DD). I have a second table, tableB, which has a field with an int
field which refers to the ID of tableA (or is null). I call this field
tableB.idA
I am trying to delete rows in tableA where the date is less than a specified
value AND there is no reference to said row in tableB.
DELETE FROM tableA WHERE tableA.date <'2007-01-01' and tableB.idA!=
tableA.id;
only to get the exception Unknown table 'tableB' in where clause.
Can anyone help me out here? Thanks, R. Vince
You have to join tableB to the query.

Loading...