Условие предложения ON и условие предложения WHERE WITH JOIN в mysql - PullRequest
3 голосов
/ 12 января 2012

Как определить, какие условия помещать в предложение ON, а какие - в условие WHERE в запросе mysql.И какие из них выполняются быстрее?

Ответы [ 3 ]

5 голосов
/ 12 января 2012

Чаще всего Mysql Query Optimizer выполняет те же функции, что и внутренняя оптимизация, а объединения - это в основном дополнительные условия. Вы также можете сравнить или использовать EXPLAIN / DESCRIBE, чтобы увидеть, как на самом деле выполняется запрос и каков план выполнения запроса .

1 голос
/ 12 января 2012

Они не совпадают.

  • Используйте предложение WHERE для FILTER записей.
  • Используйте предложение JOIN ... ON для запроса данных из нескольких таблицили взгляды;ключевое слово ON используется для BIND таблиц вместе.Этот пункт используется, когда используется отношение один-к-одному, один-ко-многим или многие-ко-многим.
0 голосов
/ 12 января 2012

Как я знаю, когда вы объединяете таблицы с помощью предложения WHERE, MySQL объединяет их с помощью общего алгоритма объединения.Если вам нужно сделать LEFT JOIN, RIGHT JOIN или любой другой тип соединения, вам нужно определить его явно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...