Bonjour,
J'ai 2 tables qui représentent des rues. L'une correspond au temps n (table1) et l'autre au temps n+1 (table2). Je veux supprimer de la table2 toutes les rues qui sont déjà dans la table1.
J'ai commencé par ajouter aux 2 tables une colonne (checksum) qui concatène toutes les autres.
Je voudrais exécuter une requête telle que
DELETE table2.* FROM table1, table2 WHERE table1.checksum=table2.checksum;
Mais il me dit "syntax error" car je ne peux faire que DELETE FROM ....
Je pense du coup à écrire une fonction qui me mettrait dans une table les checksum qui apparaissent dans les 2 tables
CREATE TABLE checksumArray(checksum text);
SELECT table2.checksum INTO checksumArray FROM table1, table2 WHERE table1.checksum=table2.checksum;
et faire une sorte de boucle :
for(i=0;i<checksumArray.size;i++)
DELETE FROM table2 WHERE checksum = checksumArray[i];
Celà est-il possible ?
Merci d'avance de votre aide !
WwAvE
Partager