SQL: Selezionare righe duplicate
Esiste una query per selezionare le righe di una tabella che hanno un valore in comune? Scopriamolo assieme.
Ogni buon programmatore, che ha a che fare quotidianamente con i database, si troverà prima o poi a dovere ricavare le righe duplicate di una tabella, quelle cioè che hanno uno o più campi in comune. Una specie di "SELECT NOT DISTICT", come erroneamente viene codificato da molti, andando incontro ad un sicuro errore.
Ad esempio, potremmo estrarre dal database di un negozio di assistenza tutti i computer con lo stesso numero seriale, cioè quelli riparati più di una volta. La query corretta è la seguente:
SELECT numero_seriale, nome_cliente, data_riparazione
FROM assistenza
WHERE numero_seriale IN (
SELECT numero_seriale
FROM assistenza
GROUP BY numero_seriale
HAVING COUNT(*) > 1
);Una query come questa è utile anche in casi di database corrotti, che presentano dati erroneamente duplicati. Fatene buon uso e per qualunque domanda potete lasciare un commento qui sotto.
Dettagli pubblicazione
Categoria: MySQL
Pubblicato da: loryzz in data: 02.10.2009 11:40:53
Ultima modifica di: loryzz in data: 02.10.2009 11:41:54
Votazioni
Commenti
Gli utenti del sito hanno rilasciato 2 commenti, di cui 0 in attesa di approvazione.
Commento di: ivan in data: 05.11.2010 17:55:57
Scusa, ho bisogno di tale aiuto:
Ciao ragazzi, sono nuovo e ho bisogno di un aiuto urgente. Mi sapete aiutare?
ho una tabella di questo tipo
id posParola frequenza
10 9 12
10 2 9
123 1 8
123 2 5
123 3 3
125 7 4
125 5 6
vorrei salvare su una nuova tabella solo le righe per ogni id tali per cui ho
la frequanza magggiore. Dunque se ad esempio n vale 1
vorrei avere le righe
10 9 12
123 1 8
125 5 6Commento di: loryzz in data: 05.11.2010 22:42:33
@ivan » Questo sito offre molto materiale gratuito: guide, articoli, premi, e-book, strumenti per webmaster. Naturalmente per potere trovare il tempo per offrire tutto ciò non possiamo anche offrire consulenze gratuite. Se hai bisogno della nostra consulenza puoi utilizzare la sezione "Contatti".
Lascia un commento
Tutti i commenti devono essere approvati da un amministratore prima di essere visualizzati al pubblico. Si tratta di una misura preventiva contro spam e pubblicità e non è necessario reinviare il commento.
Si prega di scrivere commenti in tema. Spam e messaggi promozionali non vengono approvati.
MySQL: interventi collegati
Problemi di FLOAT pubblicato da loryzz in MySQL
Rinominare le tabelle MySQL pubblicato da loryzz in MySQL
Password di root dimenticata pubblicato da loryzz in MySQL
Selezione condizionale pubblicato da loryzz in MySQL
Backup & Restore pubblicato da loryzz in MySQL




























Ritorna all'inizio
Commenti rispetto al totale
0 %
Percentuale di commento
0 %