Possible Duplicate:
INNER JOIN по сравнению с предложением WHERE - есть ли разница?В чем разница между запросом INNER JOIN и запросом неявного соединения (перечисление нескольких таблиц после ключевого слова FROM)? Например:
Для следующих двух таблиц:
CREATE TABLE Statuses( id INT PRIMARY KEY, description VARCHAR(50) ); INSERT INTO Statuses VALUES (1, 'status'); CREATE TABLE Documents( id INT PRIMARY KEY, statusId INT REFERENCES Statuses(id) ); INSERT INTO Documents VALUES (9, 1);
В чем разница между этими двумя SQL-запросами? Из проведенного мною тестирования они возвращают тот же результат. Они делают то же самое? Существуют ли ситуации, когда они возвращают разные наборы результатов?
SELECT s.description FROM Documents d, Statuses s WHERE d.statusId = s.id AND d.id = 9; SELECT s.description FROM Documents d INNER JOIN Statuses s ON d.statusId = s.id WHERE d.id = 9;