λογισμικό

* Γνώση Υπολογιστών >> λογισμικό >> λογισμικού βάσεων δεδομένων

Πώς να χρησιμοποιήσετε Επιλογή σε δήλωση Ενημέρωση

Οι σχεδιαστές της Structured Query Language ( SQL ), δημιούργησε ένα ισχυρό εργαλείο για τη διαχείριση δεδομένων με λίγες μόνο απλές εντολές . Ένα από τα πιο ισχυρά κατασκευάσματα συμβαίνει όταν οι εντολές ένθετα . A Επιλέξτε , Ενημέρωση ή Διαγραφή εντολή χρησιμοποιεί ένα ή περισσότερα πρόσθετα Επιλέξτε εντολές για να περιορίσει τη λειτουργία του . Ως παράδειγμα , η ενημέρωση σχετικά με τον πίνακα των πελατών γίνεται μόνο όταν οι συνολικές πωλήσεις συγκεντρώνονται από διάφορα αρχεία πωλήσεις συνολικά περισσότερα από $ 250 . Ακολουθήστε τα παρακάτω βήματα για να δημιουργήσετε διάφορα ένθετα εντολές Update. Τα πράγματα που θα χρειαστείτε
βάση δεδομένων SQL , όπως Oracle , Sybase , Microsoft SQL Server ή MySQL
Βασική κατανόηση των εντολών SQL και εκδότης ερώτημα
Η Εμφάνιση Περισσότερες οδηγίες
Η 1

Ανοίξτε το πρόγραμμα επεξεργασίας SQL ερώτημα και να δημιουργήσετε μια νέα βάση δεδομένων που ονομάζεται SampleDB . . Επιλέξτε αυτή τη βάση δεδομένων για τη σύνοδο ερώτημα

Δημιουργία βάσης δεδομένων SampleDB ?

Χρησιμοποιήστε SampleDB ?

Αυτά τα παραδείγματα έχουν δημιουργηθεί χρησιμοποιώντας το πρόγραμμα επεξεργασίας ερωτημάτων μέσα από το Microsoft SQL Server 2008 Management Studio Express . 2

Δημιουργήστε δύο πίνακες , πελάτες και τις πωλήσεις , και στη συνέχεια, προσθέστε μερικές εγγραφές και στους δύο πίνακες χρησιμοποιώντας την ακόλουθη δέσμη ενεργειών .

Δημιουργία πίνακα Πελάτες

( CustomerID int Πρωτεύον κλειδί , πώληση

Όνομα varchar ( 50 ) , πώληση

Κατάσταση varchar ( 10 ) ) ?

Τοποθετήστε σε τιμές Πελατών ( 1 , « John Smith », « Νέα » ) ?

εισάγετε σε τιμές Πελατών ( 2 , ' Mary Jones »,« Νέα ») ?

Τοποθετήστε σε τιμές Πελατών ( 3 , « Fred Adams ', 'Νέα ') ?

Δημιουργία πίνακα Sales

( SalesID int Primary Key , πώληση

CustomerID int Αναφορές πελάτες , πώληση

Ποσό int ) ?

εισάγετε σε τιμές πωλήσεων ( 1 , 1 , 500 ) ?

εισάγετε σε τιμές πωλήσεων ( 2 , 1 , 250 ) ?

εισάγετε σε τιμές πωλήσεων ( 3 , 3 , 50 ) ?
Η
3

Δημιουργήστε μια ένθετη ερώτημα , συνδυάζοντας μια ενημέρωση με μια δήλωση Select που θέτει το καθεστώς Πελάτη Active για εκείνους τους πελάτες που έχουν δραστηριότητα στον πίνακα των πωλήσεων .

ενημέρωση Πελάτες

Set Κατάσταση = "Ενεργή"

όπου ΚωδΠελάτη σε

( Επιλέξτε ΚωδΠελάτη Από Sales) ?

Αυτή είναι μια τυπική δήλωση Ενημέρωση SQL που καθορίζει το πεδίο Κατάσταση σε Active για μια επιλεγμένη σύνολο των εγγραφών στον πίνακα πελατών . Σε μια ένθετη ερώτημα , η ρήτρα Που περιλαμβάνει έναν ή περισσότερους Επιλογή δηλώσεις που περιβάλλεται από παρενθέσεις ( ) . Κάθε δήλωση Select επιστρέφει μια λίστα τιμών που μπορεί να συγκριθεί με ένα πεδίο στον πίνακα . Σε αυτή την περίπτωση , μόνο τα αρχεία των πελατών που έχουν αναγνωριστικά πελάτη που βρέθηκαν στον πίνακα των πωλήσεων θα ενημερωθεί .
Η 4

Δημιουργήστε μια δεύτερη ένθετη ερώτημα χρησιμοποιώντας μια δήλωση Select που συγκεντρώνει τις συνολικές πωλήσεις .

ενημέρωση Πελάτες

Ορισμός κατάστασης = «Premium»

όπου ΚωδΠελάτη Σε

( Επιλέξτε CustomerID από Sales

ομάδα από CustomerID

έχοντας ποσό ( ποσό ) > 250 ) ?

κατά την ανάλυση ένθετα ερωτήματα , ξεκινήστε με τις δηλώσεις Επιλογή βρεθεί στην περίπτωση που ρήτρα . Στην περίπτωση αυτή , ο πίνακας των πωλήσεων είναι συγκεντρωτικά από την ταυτότητα των πελατών (Ομάδα Με CustomerID ) στο σύνολο των ποσών των πωλήσεων ( Sum ( Ποσό ) ) . Μόνο εκείνοι με συνολικές πωλήσεις άνω των $ 250 έχουν επιλεγεί . Αυτή η λίστα χρησιμοποιείται στη συνέχεια για να φιλτράρει ποιες εγγραφές πελατών ενημερώνονται ( 1 πελάτη ) .
5

Δημιουργήστε ένα πιο ένθετη ερώτημα που επιλέγει εγγραφές πελατών που δεν βρίσκονται στον πίνακα των πωλήσεων .

ενημέρωση Πελάτες

Ορισμός κατάστασης = « Ανενεργό »

όπου ΚωδΠελάτη Not In

( Επιλέξτε ΚωδΠελάτη Από Sales) ?

Αυτό το ερώτημα επιλέγει πρώτα μια λίστα από τα αναγνωριστικά πελάτη που βρέθηκαν στον πίνακα των πωλήσεων ( 1 και 3) και , στη συνέχεια, ενημερώνει εκείνων που δεν περιλαμβάνονται στον κατάλογο ( πελάτη 2 ) .
Η
εικόνων

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

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