2013-03-25 3 views
0

Это всего лишь вопрос о JOINS и о том, как они могут быть написаны. Я сталкивался с обоими способами много раз раньше, но никогда не понимал, почему разные люди используют разные макеты, просто ли кто-то предпочитает один путь над другим, или это случай одного метода - это более старый способ делать что-либо или есть ли преимущества производительности одного формата по сравнению с другим или это просто до SQL, используемого вами, Oracle, MSSQL, MySQL и т. д.?SQL JOIN Параметры форматирования

Пример Один:

SELECT 
m.name 
, e.address 
FROM member m 
, email e 
WHERE m.id = e.mid 

Пример второй:

SELECT 
m.name 
, e.address 
FROM member m 
INNER JOIN email e ON m.id = e.mid 

Нет необходимости вдаваться в использовании ЛЕВЫЙ/ПРАВЫЙ присоединяется и т.д., как я уже понимаю, это просто любопытно, как на примере выше и любые отзывы, которые, по мнению людей, являются лучшими в использовании.

+0

Я предпочитаю второй вариант. Он концентрирует критерии для объединения таблиц, близких к именам таблиц, и сохраняет оператор «WHERE» decluttered. –

ответ

0

Они одинаковы, но с различным синтаксисом JOIN, поэтому вы не ожидаете разницы в производительности между двумя синтаксисами.

Первый использует старый синтаксис ANSI SQL-89 JOIN, где второй использует синтаксис ANSI SQL-92 JOIN.

Но, лучше придерживаться во вторую, в следующих статьях для получения дополнительной информации:

+0

Спасибо, именно то, что я искал, ценю ваш быстрый ответ. :) – llanato