Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Mysql - excluir várias tabelas


Criei um exemplo de teste da seguinte forma:

use test
DROP TABLE IF EXISTS a;
DROP TABLE IF EXISTS b;
CREATE TABLE a (id INT NOT NULL PRIMARY KEY);
CREATE TABLE b (id INT NOT NULL CHAVE PRIMÁRIA);
INSERIR EM VALORES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10 );
INSERIR VALORES b (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
SELECT * FROM a;
SELECT * FROM b;
DELETE a.* FROM a INNER JOIN b ON a.id =b.id WHERE a.id IN (1,2,3 ,4);
SELECIONAR * DE a;


Aqui estão meus resultados:

[email protected] (teste DB) ::use test
Banco de dados alterado
example@sqldat .com (teste DB) ::DROP TABLE IF EXISTS a;
Consulta OK, 0 linhas afetadas (0,06 seg)


[email protected] (teste DB) ::DROP TABLE IF EXISTS b;
Consulta OK, 0 linhas afetadas (0,06 seg)


[email protected] (teste DB) ::CREATE TABLE a (id INT NOT NULL PRIMARY KEY);
Consulta OK, 0 linhas afetadas (0,23 seg)


[email protected] (teste DB) ::CREATE TABLE b (id INT NOT NULL PRIMARY KEY);
Consulta OK, 0 linhas afetadas (0,17 seg)


[email protected] (teste DB) ::INSERT IN a VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
Consulta OK, 10 linhas afetadas (0,06 seg)
Registros:10 Duplicatas:0 Avisos:0


[email protected] (teste DB) ::INSERT INTO b VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
Consulta OK, 10 linhas afetadas (0,06 seg)
Registros:10 Duplicatas:0 Avisos:0


[email protected] (teste DB) ::SELECT * FROM a;
+----+
| id |
+----+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
| 7 |
| 8 |
| 9 |
| 10 |
+----+
10 linhas em conjunto (0,00 seg)


[email protected] (teste DB) ::SELECT * FROM b;
+----+
| id |
+----+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
| 7 |
| 8 |
| 9 |
| 10 |
+----+
10 linhas em conjunto (0,00 seg)


[email protected] (teste DB) ::DELETE a,b FROM a INNER JOIN b ON a.id =b.id WHERE a.id IN(1,2,3,4);Query OK, 4 linhas afetadas (0,08 seg)


[email protected] (teste DB) ::SELECT * FROM a;
+----+
| id |
+----+
| 5 |
| 6 |
| 7 |
| 8 |
| 9 |
| 10 |
+----+
6 linhas em conjunto (0,00 seg)


[email protected] (teste DB) ::SELECT * FROM b;
+----+
| id |
+----+
| 5 |
| 6 |
| 7 |
| 8 |
| 9 |
| 10 |
+----+
6 linhas em conjunto (0,00 seg)


De uma chance !!!

BTW, removi "AS a" e "AS b" da sua consulta e alterei a.b_id para a.id