powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / OUTER JOIN пытаюсь понять что такое
5 сообщений из 5, страница 1 из 1
OUTER JOIN пытаюсь понять что такое
    #39533516
queezy relax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понимаю, зачем писать OUTER.


Экспериментирую:


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
CREATE table a (id int,f int);
CREATE table b (id int,f int);

INSERT INTO a (id, f) VALUES (1,1);
INSERT INTO a (id, f) VALUES (2,1);
INSERT INTO a (id, f) VALUES (3,2);
INSERT INTO a (id, f) VALUES (4,3);
INSERT INTO a (id, f) VALUES (5,3);

INSERT INTO b (id, f) VALUES (1,1);
INSERT INTO b (id, f) VALUES (2,1);
INSERT INTO b (id, f) VALUES (3,2);
INSERT INTO b (id, f) VALUES (4,3);
INSERT INTO b (id, f) VALUES (5,7);




SELECT * FROM a
SELECT * FROM b

SELECT a.id, a.f, b.id, b.f 
FROM a
JOIN b ON a.id=b.f

SELECT a.id, a.f, b.id, b.f 
FROM a
INNER JOIN b ON a.id=b.f

SELECT a.id, a.f, b.id, b.f 
FROM a
LEFT OUTER JOIN b ON a.id=b.f

SELECT a.id, a.f, b.id, b.f 
FROM a
LEFT JOIN b ON a.id=b.f

SELECT a.id, a.f, b.id, b.f 
FROM a
RIGHT OUTER JOIN b ON a.id=b.f

SELECT a.id, a.f, b.id, b.f 
FROM a
RIGHT JOIN b ON a.id=b.f


SELECT a.id, a.f, b.id, b.f 
FROM a
FULL OUTER JOIN b ON a.id=b.f




RIGHT JOIN выдает тот же результат что и RIGHT OUTER JOIN
LEFT JOIN выдает тот же результат что и LEFT OUTER JOIN
FULL JOIN выдает тот же результат что и FULL OUTER JOIN


Зачем используется это загадочное слово OUTER ?
...
Рейтинг: 0 / 0
OUTER JOIN пытаюсь понять что такое
    #39533519
queezy relax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OUTER как-то на оптимизатор влияет?

Или результат должен другой выводить?

Зачем его вообще указывать?

Помогите разобраться.
...
Рейтинг: 0 / 0
OUTER JOIN пытаюсь понять что такое
    #39533550
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
queezy relax,

как вы думаете, что означает подобная запись :


Код: plaintext
1.
2.
3.
T1 { [INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2 ON boolean_expression
T1 { [INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2 USING ( join column list )
T1 NATURAL { [INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2

?

То что слово OUTER для LEFT, RIGHT и FULL опционально
...
Рейтинг: 0 / 0
OUTER JOIN пытаюсь понять что такое
    #39533559
queezy relax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей Панфиловqueezy relax,

как вы думаете, что означает подобная запись :


Код: plaintext
1.
2.
3.
T1 { [INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2 ON boolean_expression
T1 { [INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2 USING ( join column list )
T1 NATURAL { [INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2

?

То что слово OUTER для LEFT, RIGHT и FULL опционально


Спасибо.

Т.е. получается

INNER JON = JOIN

LEFT OUTER JOIN = LEFT JOIN

FULL OUTER JOIN = FULL JOIN

?
...
Рейтинг: 0 / 0
OUTER JOIN пытаюсь понять что такое
    #39533588
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
queezy relax,

ага
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / OUTER JOIN пытаюсь понять что такое
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]