Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> PHP /MySQL Προγραμματισμός

Πώς να Διαγραφή διπλότυπων Με το Oracle SQL

Οι πιθανότητες είναι υψηλές ότι αν διαβάζετε αυτό το άρθρο , θα σας χρησιμοποιώντας μια βάση δεδομένων Oracle και ήδη ανακαλύψει αντίγραφα σε έναν ή περισσότερους από τους πίνακες . Για να μην ανησυχείτε , την εξάλειψη των διπλότυπων μέσω κώδικα SQL σας μπορεί να γίνει εύκολα . Ωστόσο , όπως πολλοί καλοί προγραμματιστές ξέρουν , μόνο και μόνο επειδή μπορείτε να διαγράψετε κάτι που δεν σημαίνει ότι θα έπρεπε. Τα πράγματα που θα χρειαστείτε
Oracle βάση δεδομένων Oracle
SQL * Plus editor
Η Εμφάνιση Περισσότερες οδηγίες
Η 1

Ανοίξτε επεξεργαστή SQL σας και να χρησιμοποιήσετε ένα πρότυπο SQL "Επιλογή " δήλωση να τραβήξει μέχρι και εγγραφές από τον πίνακα , όπου νομίζετε ότι υπάρχουν τα αντίγραφα . Δείγμα κώδικα : SQL > Επιλογή column1 , στήλη2 από yourtablename ? Στο Σχήμα 1 , το " Όνομα " και " Usrid " στήλες έχουν επιλεγεί από έναν πίνακα με το όνομα " contacts_ersch . " Λάβετε υπόψη αυτό το τραπέζι έχει πρόσθετες στήλες με πληροφορίες που δεν έχουν δείξει , όπως διευθύνσεις ηλεκτρονικού ταχυδρομείου και τα τελευταία ονόματα . Λάβετε υπόψη , όπως πολλά σημεία των δεδομένων στη γραμμή ώστε να εξασφαλίσει το αντίγραφο γραμμή έχουμε να κάνουμε με είναι πραγματικά ένα αντίγραφο . 2

Ελέγξτε το αντίγραφο χρησιμοποιώντας το SQL " Count " λειτουργία. Υπάρχουν πλήθη τρόποι για να βρείτε και να ελέγξετε τα διπλότυπα . Στο Σχήμα 1 , υπάρχουν δύο σειρές με το όνομα " David" και ενός άλλου δύο με το όνομα " Natalie ". Δεδομένου ότι αυτό είναι υποθετικό παράδειγμα , τόσο ο David και η Natalie είναι διπλές καταχωρήσεις . Έλεγχος μόνο ένα σημείο δεδομένων, όπως ένα όνομα είναι συνήθως ποτέ δεν είναι αρκετό , ώστε , να είναι διεξοδική , ολόκληρο το αρχείο επαφής για κάθε ένα από αυτά τα άτομα είναι εις διπλούν . Η μόνη διαφορά μεταξύ των αρχείων είναι η " Usrid " number.One τρόπος για να εκτελέσει μια επιταγή με SQL , πριν να διαγράψετε μια διπλότυπη εγγραφή είναι να χρησιμοποιήσετε το SQL λειτουργία " Count" για να βρείτε τον αριθμό των φορών που η τιμή αυτή υπάρχει σε μια στήλη . Σχήμα 2 χρησιμοποιεί μια παραλλαγή του κώδικα για την εύρεση διπλότυπων με SQL.Some κωδικό , για παράδειγμα : SQL > Επιλογή column1 , Count ( column1 ) Όπως NumOccurrencesFrom yourtablenameGroup Με column1Having ( Count ( column1 ) > 1 ) ?
Η
3

Διαγράψτε το αντίγραφο συνεχόμενα χρησιμοποιώντας ένα SQL "Διαγραφή " δήλωση. Ο κωδικός σας μπορεί να μοιάζει με αυτό : SQL > Διαγραφή από yourtablenameWhere στήλη2 = αξία που θα επιλέξετε από column2Figure 3 δείχνει τη χρήση της στήλης " Usrid » και την αντίστοιχη αξία του έξι για να διαγράψετε το αντίγραφο είσοδο για « Natalie ». Στην ιδανική περίπτωση , θα υπάρξει ένα μοναδικό αναγνωριστικό που είναι μέρος μιας διπλότυπη εγγραφή . Ένα μοναδικό αναγνωριστικό σε μια σειρά , όπως έναν αριθμό ευρετηρίου ή αριθμός εγγραφής θα προετοιμάσει καλύτερα και να σας δώσει τη δυνατότητα να αποκρυπτογραφήσει μεταξύ των εις διπλούν που θέλετε να διαγράψετε .
Η 4

Ελέγξτε τη διαγραφή σας από επαναλαμβάνοντας το Βήμα 1 . Το σχήμα 4 δείχνει ότι με τη χρήση του SQL "Διαγραφή" δήλωση , τόσο από τις διπλότυπες εγγραφές για τον David και η Natalie έχουν διαγραφεί . Στη συνέχεια , υπάρχει επίσης μία εμφανής διαφορά φαίνεται στους αριθμούς της στήλης « Usrid " .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα