Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.05;
Скачать: CL | DM;

Вниз

~OUTER ~ INNER JOIN   Найти похожие ветки 

 
+JOIN+   (2006-10-20 12:01) [0]

Здравствуйте мастера.
Помогите понять пожалуйста, чем отличаются следующие операторы:

OUTER JOIN
LEFT OUTER JOIN
INNER JOIN


Я видел их в работе, но так и не могу понять принцип каждого из них.
(в мануалах которые у меня есть, я не смог найти описание этих команд)

Спасибо.


 
Anatoly Podgoretsky ©   (2006-10-20 12:11) [1]

Первые два левое внешнее соединение, а последнее внутреннее.
Советую почитать что ни будь по теории баз данных, например Дейта.


 
Плохиш ©   (2006-10-20 12:19) [2]

Я бы его ближе послал в Localsql.hlp :-)


 
Desdechado ©   (2006-10-20 12:21) [3]

Внешнее объединение дает возможность содеинять таблицы так, что в одной из них может не быть соответствия конкретному значению в другой таблице по соединяемым полям.
Внутреннее обязывает эти значения быть в обеих таблицах, иначе в результат выборки они не попадут.


 
+JOIN+   (2006-10-20 12:31) [4]

> [3] Desdechado ©   (20.10.06 12:21)

Спасибо.
А наличие оператора <LEFT>  в OUTER JOIN играет какую-нибудь роль?


 
Anatoly Podgoretsky ©   (2006-10-20 12:34) [5]


> Я бы его ближе послал в Localsql.hlp :-)

Рано и опасно, нахватется верхов и будет постоянно приходить на форум с жалобой. Надо все таки теорию изучать в первую очередь, SQL во вторую и уж только в третью конкретный синтаксис.


 
Anatoly Podgoretsky ©   (2006-10-20 12:36) [6]


> А наличие оператора <LEFT>  в OUTER JOIN играет какую-нибудь
> роль?

Играет, но это как раз в третью очередь, системно зависимо, но как правило это LEFT


 
ЮЮ ©   (2006-10-20 12:39) [7]

Наличие OUTER при наличии LEFT роли не играют.

Для INNER JOIN достатточно просто JOIN
Для OUTER JOIN указать какое, само OUTER опустить

a LEFT JOIN b
 все записи из а, а из b - как придется
a RIGHT JOIN b
 все записи из b, а из a - как придется. На практике не использую, т.к. связываю таблицы слева -направо

a
[LEFT] JOIN b ON ...
[LEFT] JOIN c ON ...
,,,

a FULL JOIN b
 итоге будут все записи из а и b, а соответствуюшие им - как придется

как придется - означает, что вернутся NULL-евые поля таблицы, если соответствующих записей в ней нет


 
Desdechado ©   (2006-10-20 12:40) [8]

LEFT или RIGHT означает только сторону в операторе соединения, которая быть обязана, вторая может не быть


 
+JOIN+   (2006-10-20 12:44) [9]

Спасибо всем.



Страницы: 1 вся ветка

Текущий архив: 2006.11.05;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.031 c
2-1161069191
Батя
2006-10-17 11:13
2006.11.05
Типа listbox a только в место текста картинки


4-1143738791
mlm68
2006-03-30 21:13
2006.11.05
Как сделать программное безопасное извлечение флешки?


11-1137519814
Vladimir Kladov
2006-01-17 20:43
2006.11.05
ProjMover


15-1161010468
oldman
2006-10-16 18:54
2006.11.05
Вчера вычитал, откуда пошло слово "спам"...


15-1160972947
Александр10
2006-10-16 08:29
2006.11.05
Win XP