#1 Fri 16 January 2015 17:05
- PERRON Gilles
- Participant actif
- Date d'inscription: 19 Nov 2007
- Messages: 88
Comparaison entre 2 tables
Bonjour,
je cherche à comparer 2 tables MI en recueillant un résultat sur des identifiants susceptibles d'être différents entre les 2 tables. Je n'ai pas Mapbasic et je pensais pouvoir m'en sortir avec la fenêtre des requêtes SQL.
Je précise qu'il ne s'agit pas d'une requête sur des objets géographiques mais sur des champs ID déclarés en entier pour chacune des tables.
Je crois que l'on peut utiliser des fonctions de type "SELECT from Table WHERE <conditions>", mais je n'ai pas vraiment la pratique de ce genre de requête.
Quelqu'un aurait-il la gentillesse de m'éclairer sur la façon de procéder ?
Un grand merci pour toute aide apportée sur le sujet.
Cdlt,
GiPi
Hors ligne
#2 Fri 16 January 2015 20:42
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Comparaison entre 2 tables
Salut,
Si j'ai bien saisit ton soucis:
Récupérer les ID présents dans table 1 et non dans table2 ->
select ID from Table1 where Table1.ID not in (select ID from Table2) into IDdansTab1etpasdansTab2
et pour table 2
select ID from Table2 where Table2.ID not in (select ID from Table1) into IDdansTab2etpasdansTab1
Si tu veux récupérer la totalité des champs dans ta sélection (pas seulement les ID) -> remplace le "ID" par -> "*"
Une autre solution sans passer par ces requêtes et de faire un export en .txt de tes tables et d'utiliser un logiciel de comparaison de fichiers .txt, comme TextDiff ou WinMerge --> http://www.freesoftwaretools.net/catego … s/textdiff
--> http://www.portablefreeware.com/index.php?sc=250s
En espérant avoir répondu à ta question
A+
Joël
Hors ligne
#3 Tue 20 January 2015 17:14
- PERRON Gilles
- Participant actif
- Date d'inscription: 19 Nov 2007
- Messages: 88
Re: Comparaison entre 2 tables
Merci à Spacejo pour les solutions données.
J'ai finalement opté pour l'utilisation de l'outil textdif sur les fichiers exportés au format "txt".
Une autre solution possible pour les adeptes de Linux consiste à utiliser la fonction sdiff-o fic1 fic2.
Cdlt,
GiPi
Hors ligne
#4 Wed 21 January 2015 09:10
- olivier.eckmann
- Participant assidu
- Date d'inscription: 14 Dec 2007
- Messages: 353
Re: Comparaison entre 2 tables
Bonjour,
j'arrive un peu tard et ce n'est pas direct, mais je suis tombé sur le site de l'IGN qui propose un outil pour comparer les évolutions entre 2 base SHP ou PostGis. Jamais testé, mais ça peut être inétessant.
http://logiciels.ign.fr/?-Differentiel,4-
Olivier
Hors ligne