..
Ποιος ξέρει τι γνώση της SQL είναι η JOIN. Σε οδηγούς μας και άλλα άρθρα μας εξήγησε πώς η JOIN και πώς μπορείτε να δημιουργήσετε σχέσεις μεταξύ διαφορετικών πινάκων σε μια βάση δεδομένων.
Η πιο κοινή απαίτηση αυτή ικανοποιείται από το μέσο JOIN για να βρείτε τα παιχνίδια ανάμεσα σε δύο τραπέζια, οπότε διασώζει το INNER JOIN ρήτρα που εντοπίζει με ακρίβεια και επιστρέφει τα πεδία που ανταποκρίνονται στις αλληλογραφία αναζήτησε μέσα που εμπλέκονται δύο ή περισσότερους πίνακες στο JOIN.
Πολύ λιγότερο διαισθητική για το αντίθετο είναι η ανάγκη να προσδιοριστούν οι τομείς που δεν έχουν έναν αγώνα εντός του JOIN.
Ας πάρουμε ένα παράδειγμα.
Ας υποθέσουμε ότι θέλετε να διαχειριστείτε μια βάση δεδομένων του ηλεκτρονικού εμπορίου αποτελείται μόνο από δύο πίνακες:
Για να πληρούν την πρώτη προϋπόθεση, βέβαια, είναι αρκετά απλό:
SELECT CUSTOMER.FIRST, CUSTOMER.LAST ΑΠΟ πελάτες INNER JOIN Παραγγελίες ON = clienti.id ordini.id_cliente ORDER BY ASC CUSTOMER.LASTκαι μέχρι στιγμής κανένα πρόβλημα.
Αλλά πώς μπορούμε να κάνουμε για να ανατρέψει το αποτέλεσμα;
Λοιπόν ...
Κατ 'αρχάς, μην χρησιμοποιείτε τις λειτουργίες INNER JOIN, αλλά μια LEFT JOIN για να βρει έναν αγώνα, αλλά όχι πλήρη μερική, όπου, όμως, τα αποτελέσματα από το αριστερό πίνακα επέστρεψε έτσι κι αλλιώς.
Χωρίς αυτό θα δούμε (χρησιμοποιώντας την φράση WHERE) τα αρχεία που λείπουν (π.χ. δεν περιλαμβάνεται στην έκθεση), τότε χαρακτηρίζεται ως NULL (στο SQL NULL ορίζεται ως ένα είδος «ειδική τιμή» που προσδιορίζει την απουσία της αξίας ..)
Ας δούμε τον κώδικα:
SELECT CUSTOMER.FIRST, CUSTOMER.LAST ΑΠΟ πελάτες LEFT JOIN Παραγγελίες ON = clienti.id ordini.id_cliente ΠΟΥ ΕΙΝΑΙ NULL ordini.id_cliente ORDER BY ASC CUSTOMER.LASTΤο αποτέλεσμα είναι, στην πραγματικότητα, ο κατάλογος των ονομάτων των πελατών μας, οι οποίοι ποτέ δεν έχουν αγοράσει τίποτα.
| |
MS Access (για προχωρημένους)
Μάθετε πώς να δημιουργήσετε και να διαχειριστείτε τις βάσεις δεδομένων γρήγορα και εύκολα. Ξεκινώντας από 29 €. |
| |
MySQL (Μάθημα)
Διαχείριση του open-source βάση δεδομένων. Από 39 €. |
| |
SQL και βάσης δεδομένων (Μάθημα)
Δημιουργία και διαχείριση των σχεσιακών βάσεων δεδομένων. Από 39 €. |