λογισμικό

Γνώση Υπολογιστών >> λογισμικό >  >> SQL Server

Παράδειγμα για συμμετοχή περισσότερων από 3 πίνακες χρησιμοποιώντας SQL Server;

Συμμετοχή σε περισσότερους από 3 πίνακες στο SQL Server

Ακολουθεί ένα παράδειγμα συμμετοχής σε τέσσερις πίνακες στο SQL Server, μαζί με εξηγήσεις:

σενάριο: Φανταστείτε μια βάση δεδομένων για ένα βιβλιοπωλείο:

* Πελάτες: Αποθηκεύει πληροφορίες πελατών (CustomerId, FirstName, LastName, Email)

* Παραγγελίες: Περιέχει λεπτομέρειες παραγγελίας (orderID, customerId, dradedate, TotalAmount)

* orderItems: Παραθέτει στοιχεία σε κάθε σειρά (orderItemid, orderId, bookid, ποσότητα)

* Βιβλία: Διατηρεί πληροφορίες για κάθε βιβλίο (Bookid, Τίτλος, Συγγραφέας, Τιμή)

Στόχος: Αποκτήστε μια λίστα με ονόματα πελατών, ημερομηνίες παραγγελιών και τους τίτλους των βιβλίων που αγόρασαν.

`` sql

ΕΠΙΛΕΓΩ

c.firstname,

C.LastName,

O.Orderdate,

B.Title ως booktitle

ΑΠΟ

Πελάτες γ

ΕΝΩΝΩ

Παραγγελίες o στο c.CustomerId =O.CustomerId

ΕΝΩΝΩ

OrderItems oi o.OrorderId =oi.OrderId

ΕΝΩΝΩ

Βιβλία Β στο oi.bookid =b.bookid

Παραγγείνω κατά

C.LastName, O.OrorderDate;

`` `

Επεξήγηση:

1. Επιλέξτε ρήτρα: Καθορίζει τις στήλες για ανάκτηση (όνομα πελάτη, ημερομηνία παραγγελίας, τίτλος βιβλίου).

2. από τη ρήτρα: Παραθέτει τους πίνακες που εμπλέκονται στην ένωση.

3. Συμμετοχή ρήτρες: Συνδέστε τους πίνακες που βασίζονται σε κοινές στήλες.

* `Συμμετοχή παραγγελιών o o c.customerid =o.customerid`:Συνδέει` πελάτες 'και `παραγγελίες' στη στήλη` customerId '.

* `Συμμετοχή στο OrderItems oi o.OrorderId =oi.OrderId`:Συνδέει` Παραγγελίες 'και `orderItems` στη στήλη` orderid`.

* `Συμμετοχή βιβλίων B στο oi.bookid =b.bookid`:Συνδέει` orderItems 'και `books' στη στήλη` bookid '.

4. Παραγγελία με ρήτρα: Ταξινόμηση των αποτελεσμάτων από το επώνυμο και την ημερομηνία παραγγελίας του πελάτη.

Βασικά σημεία:

* Τύποι: Μπορείτε να χρησιμοποιήσετε διαφορετικούς τύπους ενωμένων τύπων όπως `left join ',` right join' ή `full join 'ανάλογα με τις συγκεκριμένες απαιτήσεις σας.

* ψευδώνυμα: Χρησιμοποιώντας ψευδώνυμα (π.χ., `c` για` πελάτες ') καθιστά το ερώτημα πιο ευανάγνωστο.

* Ονόματα στηλών: Προσέξτε τα διπλά ονόματα στηλών σε πίνακες. Χρησιμοποιήστε ψευδώνυμα πίνακα (π.χ., `b.title ') για να διευκρινίσετε.

* Βελτιστοποίηση: Για σύνθετα ερωτήματα, εξετάστε τη χρήση δεικτών στις στήλες σύνδεσης για βελτιωμένη απόδοση.

Πρόσθετες σημειώσεις:

* Αυτό το παράδειγμα καταδεικνύει μια βασική σύνδεση χρησιμοποιώντας πολλούς πίνακες. Μπορείτε να τροποποιήσετε το ερώτημα για να συμπεριλάβετε περισσότερες στήλες, φίλτρα ή συνολικές λειτουργίες που βασίζονται στις συγκεκριμένες ανάγκες σας.

* Η ρήτρα "Παραγγελία από" είναι προαιρετική, αλλά βοηθά στην οργάνωση των αποτελεσμάτων με ουσιαστικό τρόπο.

Μη διστάσετε να προσαρμόσετε αυτό το παράδειγμα στο δικό σας σχήμα βάσης δεδομένων.

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

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