λογισμικό

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

Έχετε εντολή inner join στο Oracle;

Ναι, η Oracle υποστηρίζει την εντολή `Inner Join '. Χρησιμοποιείται ακριβώς όπως σε άλλες βάσεις δεδομένων SQL για να συνδυάσει σειρές από δύο ή περισσότερους πίνακες που βασίζονται σε μια σχετική στήλη μεταξύ τους. Μόνο σειρές που έχουν αντίστοιχες τιμές και στους δύο πίνακες περιλαμβάνονται στο σύνολο αποτελεσμάτων.

Εδώ είναι η βασική σύνταξη:

`` sql

Επιλέξτε Colult_Name (ες)

Από τον Πίνακα1

Εσωτερική συμμετοχή του Πίνακα2 στον Πίνακα1.COLUMN_NAME =ΠΙΝΑΚΑΣ2.COLUMN_NAME;

`` `

Μπορείτε επίσης να χρησιμοποιήσετε την παλαιότερη, πιο λεπτομερή σύνταξη `join 'που είναι λειτουργικά ισοδύναμη με το` Inner Join':

`` sql

Επιλέξτε Colult_Name (ες)

Από τον Πίνακα 1, Πίνακας2

Όπου Πίνακας1.Column_Name =Πίνακας2.Column_Name;

`` `

Ενώ αυτό λειτουργεί, η «εσωτερική ένωση» σύνταξη προτιμάται για την αναγνωσιμότητα και τη σαφήνεια, ειδικά σε πολύπλοκα ερωτήματα που περιλαμβάνουν πολλαπλές συνδέσεις. Η λέξη -κλειδί `join` αποφεύγεται γενικά στις σύγχρονες πρακτικές κωδικοποίησης SQL.

Παράδειγμα:

Ας πούμε ότι έχετε δύο πίνακες:«υπαλλήλους» και «τμήματα».

Πίνακας υπαλλήλων:

| Employee_id | Όνομα | department_id |

| --------------- | -----------------------------

| 1 | John Doe | 10 |

| 2 | Jane Doe | 20 |

| 3 | David Lee | 10 |

Πίνακας Τμήματα:

| department_id | Όνομα |

| -------------- | -----------------------

| 10 | Πωλήσεις |

| 20 | Μάρκετινγκ |

| 30 | Μηχανική |

Ένα `Inner Join 'query για να ανακτήσετε τα ονόματα των εργαζομένων και τα ονόματα των τμημάτων τους θα μοιάζουν με αυτό:

`` sql

Επιλέξτε τους υπαλλήλους.

Από τους εργαζόμενους

Εσωτερική συμμετοχή σε τμήματα σε υπαλλήλους.Department_id =departments.department_id;

`` `

Αυτό θα επέστρεφε:

| Όνομα | Όνομα |

| ---------- | ----------------------- |

| John Doe | Πωλήσεις |

| Jane Doe | Μάρκετινγκ |

| David Lee | Πωλήσεις |

Μόνο οι υπάλληλοι που έχουν ένα αντίστοιχο `department_id` και στους δύο πίνακες περιλαμβάνονται στο αποτέλεσμα. Οι εργαζόμενοι που δεν ανατέθηκαν σε ένα τμήμα στο τραπέζι των «Τμήματος» ή τα τμήματα χωρίς υπαλλήλους στον πίνακα «εργαζομένων» δεν θα συμπεριληφθούν.

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

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