Buongiorno,
avrei necessità di confrontare due database, entrambi sono di circa un milione e mezzo di record.
Avrei bisogno di vedere solo le righe differenti, i database hanno campi identici tranne il campo id che non corrisponde, ma che potrebbe benissimo essere eliminato.
Penso che giocando con i join e accodamento tabelle qualcosa si possa fare, e chiedo consiglio su come eseguire la cosa.
P.s. posso affrontare la cosa anche tramite sql.
cordiali saluti
CONFRONTO DUE DATABASE L’argomento è risolto
Moderatore: Utilizzo_prof_Excel
-
- Messaggi: 47 | Topic creati
- Iscritto il: mer 9 giu 2021, 16:36
- Ringraziato: 5 volte
-
- Messaggi: 890 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:03
- Luogo: San Giovanni in Persiceto (BO)
- Ringraziato: 325 volte
- Contatta:
CONFRONTO DUE DATABASE
Ciao. Con Power query puoi fare un merge di query impostato con il left anti-join, e in modo simile con SQL farai
Codice: Seleziona tutto
SELECT *
FROM db1
LEFT JOIN db2 ON
db1.key = db2.key
WHERE db2.key IS NULL
Enrico Galli
Link utili: I nostri tutorial | Come inserire: Immagini - Codice - Risolto
Se il forum ti è stato utile, considera di supportarlo con una libera donazione
Link utili: I nostri tutorial | Come inserire: Immagini - Codice - Risolto
Se il forum ti è stato utile, considera di supportarlo con una libera donazione
-
Autore del topic - Messaggi: 47 | Topic creati
- Iscritto il: mer 9 giu 2021, 16:36
- Ringraziato: 5 volte
CONFRONTO DUE DATABASE
Scusami Enrico mi sono espresso male non sono due database ma due tabelle dello stesso database; penso che modificando il codice sql potrei riuscirci lo stesso.Enrico Galli ha scritto: ↑lun 9 ago 2021, 13:11 Ciao. Con Power query puoi fare un merge di query impostato con il left anti-join, e in modo simile con SQL faraiCodice: Seleziona tutto
SELECT * FROM db1 LEFT JOIN db2 ON db1.key = db2.key WHERE db2.key IS NULL
-
- Messaggi: 890 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:03
- Luogo: San Giovanni in Persiceto (BO)
- Ringraziato: 325 volte
- Contatta:
CONFRONTO DUE DATABASE
Il codice è pensato per due tabelle, anche perché "confrontare due database", se di database veri e propri si tratta, è un concetto che sostanzialmente non ha senso, quindi avevo capito cosa intendevi dire
Enrico Galli
Link utili: I nostri tutorial | Come inserire: Immagini - Codice - Risolto
Se il forum ti è stato utile, considera di supportarlo con una libera donazione
Link utili: I nostri tutorial | Come inserire: Immagini - Codice - Risolto
Se il forum ti è stato utile, considera di supportarlo con una libera donazione
-
Autore del topic - Messaggi: 47 | Topic creati
- Iscritto il: mer 9 giu 2021, 16:36
- Ringraziato: 5 volte
CONFRONTO DUE DATABASE
Allora son riuscito a far funzionare la query scrivendola cosi:
Le due tabelle si chiamano 2020 e 2020N, se ho capito bene il risultato è tutte le righe della tabella 2020 non presenti nella tabella 2020N escludendo il campo ID.
Invertendo il nome delle tabelle dovrei avere il risultato inverso ovvero tutti i record presenti nella tabella 2020N non contenuti nella 2020.
Chiedo conferma d'aver capito il funzionamento della query, e inoltre se lo ritenette opportuno spostate pure il topic in un altra sezione.
Saluti
Codice: Seleziona tutto
SELECT *
FROM [dbo].[2020]
LEFT JOIN [dbo].[2020N] ON
[dbo].[2020].ID = [dbo].[2020N].ID
WHERE [dbo].[2020N].ID IS NULL
Invertendo il nome delle tabelle dovrei avere il risultato inverso ovvero tutti i record presenti nella tabella 2020N non contenuti nella 2020.
Chiedo conferma d'aver capito il funzionamento della query, e inoltre se lo ritenette opportuno spostate pure il topic in un altra sezione.
Saluti