Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Объединения таблиц / 12 сообщений из 12, страница 1 из 1
03.03.2017, 15:14
    #39413711
Evgen8739
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
Доброго времени суток.
Поделитесь соображениями,опытом и т.д.
Я всегда таблицы объединяю с помощью join.
Но во всех пособиях которые я читал,под понятием объединения подразумевается запросы следующего вида:
FROM table1,table2,table3.
Вот и интересно узнать чем одно лучше(хуже) другого.
И в каких случаях можно использовать только один вариант и нельзя другой.
...
Рейтинг: 0 / 0
03.03.2017, 15:37
    #39413738
tru55
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
авторВот и интересно узнать чем одно лучше(хуже) другого.
Практически одинаково, хотя разные люди имеют разные мнения относительно читабельности того или другого варианта. А вообще поищи по форуму, обсуждалось по крайней мере пару раз.
...
Рейтинг: 0 / 0
03.03.2017, 15:38
    #39413741
--Eugene--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
Evgen8739,

в результате всеравно оракул переписывает ANSI в NATIVE
...
Рейтинг: 0 / 0
03.03.2017, 15:44
    #39413745
--Eugene--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
Evgen8739в каких случаях можно использовать только один вариант и нельзя другой.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
SANDBOX@ee>;select 1 from dual a, dual b where a.dummy (+) = b.dummy (+);
select 1 from dual a, dual b where a.dummy (+) = b.dummy (+)
                                               *
ERROR at line 1:
ORA-01468: a predicate may reference only one outer-joined table

SANDBOX@ee>;select 1 from dual a full join dual b on a.dummy = b.dummy;
         1
----------
         1
...
Рейтинг: 0 / 0
03.03.2017, 15:47
    #39413747
Vint
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
Evgen8739,
слабо книжку прочитать чтобы не задавать тупые вопросы?
исключительно ради популяризации автора)))
...
Рейтинг: 0 / 0
03.03.2017, 15:55
    #39413763
Evgen8739
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
--Eugene--,

Спасибо за пример)))
...
Рейтинг: 0 / 0
03.03.2017, 16:01
    #39413773
--Eugene--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
Using Lateral Inline Views: Example The following example shows a join with two operands. The second operand is an inline view that specifies the first operand, table e, in the WHERE clause. This results in an error.
Код: plsql
1.
2.
SELECT * FROM employees e, (SELECT * FROM departments d
                            WHERE e.department_id = d.department_id);

Код: plaintext
ORA-00904: "E"."DEPARTMENT_ID": invalid identifier

The following example shows a join with two operands. The second operand is a lateral inline view that specifies the first operand, table e, in the WHERE clause and succeeds without an error.
Код: plsql
1.
2.
SELECT * FROM employees e, LATERAL(SELECT * FROM departments d
                                   WHERE e.department_id = d.department_id);
...
Рейтинг: 0 / 0
03.03.2017, 16:06
    #39413780
Evgen8739
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
Vint,

Согласен,вопрос далеко не умный.
Но в литературе которую читал подобного не встретил(достоинство,преимущество).
За время своей практике,самостоятельно этого не понял(для меня join удобнее и понятнее,но все мои запросы могли бы работать и без него).
Поэтому и спросил на форуме где такие вещи хорошо всем знакомы.И огромное спасибо ещё раз --Eugene-- за наглядность запросов)
Спасибо и за ссылку на книгу,уже штудирую.
...
Рейтинг: 0 / 0
03.03.2017, 16:11
    #39413789
Объединения таблиц
Evgen8739, база изначально росла со своим синтаксисом, потом начали поддерживать ANSI - в результате ошибок в нём гораздо больше.
...
Рейтинг: 0 / 0
03.03.2017, 16:16
    #39413794
--Eugene--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
баги баги багиошибок в нём гораздо больше.ой, да ладно.
и это не повод сидеть на олдфажном нативе
...
Рейтинг: 0 / 0
03.03.2017, 16:29
    #39413814
Vint
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединения таблиц
--Eugene--,
да абсолютно все равно на каком олфажном джоине ты сидишь. главное разбираться в чем же разница, а не тупо втюхивать фуфло))
...
Рейтинг: 0 / 0
06.03.2017, 08:46
    #39414486
Объединения таблиц
Если я усну и проснусь через сто лет и меня спросят, что сейчас происходит в России, я отвечу, — ПЬЮТ И ВОРУЮТ, А ТАК ЖЕ НЕ УПУЩУ ДОБАВИТЬ "ОБСУЖДАЮТ КАК ЖИТЬ - С ANSI ИЛИ NATIVE"
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Объединения таблиц / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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