PDA

Visualizza la versione completa : [SQL] Eliminazione duplicati attraverso unione di record


affo20
18-05-2006, 17:12
Ciao a tutti,

ho il seguente problema e non ne riesco a uscire...

praticamente ho 7 campi e molti record si ripetono se non per un campo solo.

Vorrei lė dove cambiasse solo quello aggiungere un altro campo che lo
contenga.

Es.
A B C
Pino Via milano 24
Pino Via milano 49
Marco Via liguria 33
Marco
Sara Via roma 64

diventerebbe:

A B C D
Pino Via milano 24 49
Marco Via liguria 33
Sara Via roma 64

spero di essere stato chiaro.

Ringraziamenti anticipati.

affo20
18-05-2006, 17:14
scusate mi č scappato un marco di troppo,

volevo solo dire che dove ho pių campi c diversi riunirli sempre in d e non aggiunfere di volta in volta un nuovo campo (chiaro che se fosse pių comodo) mi adatterei.

123delphi321
18-05-2006, 18:37
non mi e' tanto chiaro....

quale campo puo' essere vuoto? quello contenente il numero civico?

prova a postare la struttura della tabella.

comunque penso che un problema del genere lo riusciresti a risolvere agevolmente con una stored

affo20
18-05-2006, 19:14
Praticamente da cosė:

Nome Cognome Indirizzo Numero
Franco Neri Via liguria 54
Franco Neri Via liguria 68
Franco Neri Via liguria 72
Lucia Rossi Via roma 15
Mara Nello Via milano 18
Luca Carbone via padova 15
Luca Carbone via padova 13


diventare cosė

Nome Cognome Indirizzo numero altri numeri
franco neri via liguria 54 68,72
Lucia Rossi Via roma 15
Mara Nello Via milano 18
Luca Carbone via padova 15 13

grazie.
ciao.

123delphi321
18-05-2006, 19:41
Originariamente inviato da affo20
Praticamente da cosė:
Nome Cognome Indirizzo Numero
Franco Neri Via liguria 54
Franco Neri Via liguria 68
Franco Neri Via liguria 72
Lucia Rossi Via roma 15
Mara Nello Via milano 18
Luca Carbone via padova 15
Luca Carbone via padova 13


diventare cosė
Nome Cognome Indirizzo numero altri numeri
franco neri via liguria 54 68,72
Lucia Rossi Via roma 15
Mara Nello Via milano 18
Luca Carbone via padova 15 13


io farei una stored:


.....
for select distinct
tabella.nome,
tabella.cognome,
tabella.indirizo
from tabella
into........
do
begin
altrinumeri:='';
for select numero from tabella
where nome=...nome and cognome=...cognome and indirizzo=...indirizzo
into altri
do
begin
altrinumeri=altrinumeri+','+altri;
end

suspend;
end
....


e' una bozza di codice (non testato) per la tua stored....

ciao

alka
18-05-2006, 20:18
Per poter parlare di stored procedure, si dovrebbe conoscere il database di cui stiamo parlando; fino ad ora, non mi sembra sia stato nemmeno accennato, tra l'altro. :stordita:

Loading