CONFRONTO DUE DATABASE L’argomento è risolto

Non è propriamente un programma di BI, ma nelle sue versioni più recenti anche Excel può fare grandi cose!

Moderatore: Utilizzo_prof_Excel

Rispondi
Avatar utente

Alieno86
Messaggi: 47 | Topic creati
Iscritto il: mer 9 giu 2021, 16:36
Ringraziato: 5 volte

CONFRONTO DUE DATABASE

Messaggio da Alieno86 »

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


Avatar utente

Enrico Galli
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

Messaggio da Enrico Galli »

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
Avatar utente

Autore del topic
Alieno86
Messaggi: 47 | Topic creati
Iscritto il: mer 9 giu 2021, 16:36
Ringraziato: 5 volte

CONFRONTO DUE DATABASE

Messaggio da Alieno86 »

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 farai

Codice: Seleziona tutto

SELECT *
FROM db1
LEFT JOIN db2 ON
db1.key = db2.key
WHERE db2.key IS NULL
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.
Avatar utente

Enrico Galli
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

Messaggio da Enrico Galli »

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
Avatar utente

Autore del topic
Alieno86
Messaggi: 47 | Topic creati
Iscritto il: mer 9 giu 2021, 16:36
Ringraziato: 5 volte

CONFRONTO DUE DATABASE

Messaggio da Alieno86 »

Allora son riuscito a far funzionare la query scrivendola cosi:

Codice: Seleziona tutto

SELECT *
FROM [dbo].[2020]
LEFT JOIN  [dbo].[2020N] ON
[dbo].[2020].ID = [dbo].[2020N].ID
WHERE [dbo].[2020N].ID IS NULL
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
Rispondi