sql >> Database >  >> RDS >> Mysql

MySQL verwijder rij uit meerdere tabellen

Ja dat is correct. Hier werkt het prima:

CREATE TABLE table1 (id int, username nvarchar(30));
CREATE TABLE table2 (id int);
CREATE TABLE table3 (id int);
CREATE TABLE table4 (id int);

INSERT INTO table1 VALUES (1, 'Foo'),(2, 'Bar');
INSERT INTO table2 VALUES (1),(2);
INSERT INTO table3 VALUES (1),(2);
INSERT INTO table4 VALUES (1),(2);

SELECT COUNT(*) FROM table1;
2
SELECT COUNT(*) FROM table2;
2
SELECT COUNT(*) FROM table3;
2
SELECT COUNT(*) FROM table4;
2

DELETE t1, t2, t3, t4 FROM
  table1 as t1
  INNER JOIN  table2 as t2 on t1.id = t2.id
  INNER JOIN  table3 as t3 on t1.id=t3.id
  INNER JOIN  table4 as t4 on t1.id=t4.id
  WHERE  t1.username='Foo' AND t1.id='1';

SELECT COUNT(*) FROM table1;
1
SELECT COUNT(*) FROM table2;
1
SELECT COUNT(*) FROM table3;
1
SELECT COUNT(*) FROM table4;
1

Als het niet voor u werkt, kunt u dit voorbeeld misschien aanpassen om te laten zien welk probleem u ondervindt.



  1. Optioneel argument in PL/pgSQL-functie

  2. Problemen met de tijdzone van Java MySQL Tijdstempel

  3. Converteer tekstwaarde in SQL Server van UTF8 naar ISO 8859-1

  4. MySQL Docker-container slaat geen gegevens op in nieuwe afbeelding