iucaa ha scritto:
ho creato una vista che mi deve restituire da una tabella i record che hanno il CF e PIVA diversi
Prima incongruenza: nel tuo esempio vedo CF uguali.
Intendevo dire presenti una sola volta (non duplicati)
iucaa ha scritto:
il mio cliente mi chiede anche di eliminare i doppi CF o PIVA presenti
Seconda incongurenza: in base a quale criterio decidi quale record eliminare quale tenere?
Il criterio si applica al numero di telefono: esempio ho un num di tel. '0889' che si ripete 3 volte (3 record) questi 3 record hanno 2 codici fiscali diversi (quindi 2 di questi ne hanno uno uguale), vorrei eliminare uno di questi 2 record (in quanto già presente come codice fiscale), non sò se sono chiaro, l'importanza dell'estrazione dei dati è: trovare tutti i records che hanno lo stesso numero di tel. ma con CF o PIVA diversi
iucaa ha scritto:
(Che ovviamente vengono invece estratti in quanto rimessi in join nella tabella di estrazione che contiene il n.tel)
Provo a postare il codice, la vista View_CF_PIVA_Univoca estrare i record con CF e PIVA unici (Distinct )
SELECT DISTINCT
dbo.View_CF_PIVA_Univoca.Id,
dbo.View_CF_PIVA_Univoca.Nome,
dbo.View_CF_PIVA_Univoca.Numero,
dbo.View_CF_PIVA_Univoca.Data_Attivazione,
dbo.View_CF_PIVA_Univoca.CF, dbo.View_CF_PIVA_Univoca.PIVA
FROM
dbo.View_5 LEFT OUTER JOIN
dbo.View_CF_PIVA_Univoca
ON dbo.View_5.PIVA = dbo.View_CF_PIVA_Univoca.PIVA
AND
dbo.View_5.CF = dbo.View_CF_PIVA_Univoca.CF
Questa vista funziona, ma ottengo ovviamente dei cf doppi
Scusa grazie per l'attenzione
Questo è l'output, per motivi di privacy ho indicato solo l'ultima parte del cf, calcola che ci sono altri campi all'interno della vista.
ID | NOME | CF
------|------------------------------|--------------
1372 | N<*******>E |H501S
1382 | R<******>O |H501E
1390 | C<********>O |A485Z
1392 | D ´A<*********>E |H501J
1396 | D ´A<*********>E |H501J
1399 | M<*********>E |496B
1403 | F<********>A |H501E
1404 | F<********>A |H501E
Come puoi vedere H501J e H501E sono duplicati (Ma hanno lo stesso n. di tel. tra di loro)
[/quote]