Возможный дубликат:
ВХОДНАЯ МЕЖДУНАРОДНАЯ ПРОГРАММА В ОТНОШЕНИИ 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;