Следующий код будет работать для выбора данных из двух таблиц:
SELECT t1.foo, t2.bar FROM TABLE1 t1 INNER JOIN TABLE2 t2 ON t1.foo=t2.foo
Я мог бы так же легко написано
SELECT t2.foo, t2.bar FROM TABLE1 t1 INNER JOIN TABLE2 t2 ON t1.foo=t2.foo
t1.foo
или t2.foo
: шесть из одного или полдюжины другого. Почему не просто foo
?
Я удивлялся, почему не • SQL-сервер просто автоматически возвращает данные без указания той или иной таблицы, поскольку выбор является совершенно произвольным (насколько я могу судить).
Я могу составить сценарий, в котором вам нужно будет указать таблицу, такие как
SELECT t1.foo, t2.bar FROM TABLE1 t1 INNER JOIN TABLE t2 ON t1.foo+=t2.foo
Однако, по моему опыту, такие сценарии далеки от нормы.
Может ли кто-нибудь объяснить мне, почему язык спроектирован таким образом, что я должен принимать это, казалось бы, произвольное решение в моем коде?