Middle
Ποια είναι η διαφορά μεταξύ Inner Join και Join; Πώς διαφέρει ένα συνηθισμένο Join από ένα Inner Join;
sobes.tech AI
Απάντηση από AI
Στον όρο SQL "JOIN" συνήθως εννοείται "INNER JOIN" από προεπιλογή, εκτός αν δηλωθεί διαφορετικά.
INNER JOIN είναι μια λειτουργία που επιστρέφει μόνο τις γραμμές που έχουν αντιστοιχίσεις και στις δύο πίνακες σύμφωνα με την συνθήκη σύνδεσης.
Παράδειγμα:
SELECT * FROM A INNER JOIN B ON A.id = B.a_id;
Θα επιστρέψει μόνο τις εγγραφές όπου το A.id ταιριάζει με το B.a_id.
JOIN χωρίς διευκρίνιση συνήθως σημαίνει επίσης INNER JOIN, δηλαδή δεν υπάρχει διαφορά μεταξύ JOIN και INNER JOIN — είναι συνώνυμα.
Αν χρησιμοποιηθεί, για παράδειγμα, LEFT JOIN ή RIGHT JOIN, τότε επιστρέφονται όλες οι εγγραφές από τον αριστερό ή δεξιό πίνακα αντίστοιχα, ακόμα και αν δεν υπάρχουν αντιστοιχίσεις στον άλλο πίνακα.
Συνοπτικά:
INNER JOINκαιJOINείναι το ίδιο, επιστρέφουν μόνο τις αντιστοιχισμένες εγγραφές.- Υπάρχει διαφορά μεταξύ
INNER JOINκαι άλλων τύπων JOIN (LEFT, RIGHT, FULL), αλλά όχι μεταξύJOINκαιINNER JOIN.