Junior
Τι είναι ο τελεστής inner join στη SQL και σε ποιες περιπτώσεις πρέπει να χρησιμοποιείται;
sobes.tech AI
Απάντηση από AI
Το INNER JOIN στη SQL χρησιμοποιείται για τη συνένωση γραμμών από δύο ή περισσότερους πίνακες βάσει μιας σχετικής στήλης μεταξύ τους. Επιστρέφει μόνο τις γραμμές για τις οποίες η συνθήκη σύνδεσης είναι αληθής και στους δύο πίνακες.
Περιπτώσεις χρήσης:
- Όταν χρειάζεται να ληφθούν δεδομένα από σχετιζόμενους πίνακες, όπου για κάθε εγγραφή σε έναν πίνακα υπάρχει μια αντίστοιχη εγγραφή σε έναν άλλο.
- Όταν πρέπει να επιλεγούν κοινές εγγραφές μεταξύ δύο συνόλων δεδομένων.
- Φιλτράρισμα δεδομένων, όταν θέλετε να αποκλείσετε εγγραφές που δεν έχουν αντιστοιχία σε έναν άλλο πίνακα.
Παράδειγμα:
Ας υποθέσουμε ότι υπάρχουν δύο πίνακες: Users (id, username) και Orders (id, user_id, amount). Για να πάρετε μια λίστα χρηστών και των παραγγελιών τους, όπου οι χρήστες έχουν πραγματικά κάνει παραγγελίες, χρησιμοποιείται το INNER JOIN:
SELECT
u.username,
o.amount
FROM
Users u
INNER JOIN
Orders o ON u.id = o.user_id;
Ο πίνακας που απεικονίζει το αποτέλεσμα:
| username | amount |
|---|---|
| user1 | 100 |
| user2 | 50 |
| user1 | 200 |
Αν ο user3 δεν είχε παραγγελίες στον πίνακα Orders, δεν θα εμφανιζόταν στο αποτέλεσμα του INNER JOIN.