![]() |
|
Модераторы: skyboy |
![]()
|
|
| animegirl |
|
|||
![]() Незнайка на Марсе ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 24.7.2011 Репутация: нет Всего: нет |
Не до конца понимаю, когда надо подставлять RIGHT OUTER JOIN а когда LEFT OUTER JOIN
Технология мне ясна, где-то закралась мысль, что слева стоит ставить таблицу, в которой будет а. меньше строк результата б. от которой будет конечный WHERE плясать Вообще смысл таков. В таблице А будет выбрана только одна строчка, в таблицах Б,В,Г,Д могут быть выбраны от 0 до n строчек. Сейчас я их через LEFT подцепила, но задумалась о правильности -------------------- Скажи миру - НЯ! |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Когда нужны все строки из правой таблицы, используется RIGHT [OUTER] JOIN. Когда из левой - LEFT [OUTER] JOIN. Если поменять таблицы местами и поменять направление связывания - получится два абсолютно эквивалентных запроса. Но чаще используется LEFT [OUTER] JOIN. Причина проста - при левом/правом связывании порядок связывания таблиц жёстко определён связыванием, и оно проходит именно в том порядке, в каком таблицы перечислены в запросе с левым связыванием. Просто удобнее. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |