powered by simpleCommunicator - 2.0.19     © 2024 Programmizd 02
Map
Форумы / Oracle [игнор отключен] [закрыт для гостей] / lateral: документирован ли (+) к латералу?
5 сообщений из 5, страница 1 из 1
lateral: документирован ли (+) к латералу?
    #39834984
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Знаю такой синтаксис давным давно, но сейчас что-то не смог найти в доке...

Проблема в том, что наткнулся на очередной баг:
этот запрос нормально возвращает строку:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
with a as (select level a from dual connect by level<10)
    ,b as (select 0 b from dual)
    ,c as (select 0 c from dual)
select
  *
from a,
     lateral(select * from b where a.a=b.b)(+) bb
     --left outer join c on c.c=bb.b
where a=1


а если раскомментировать лефт джойн, то перестает:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
with a as (select level a from dual connect by level<10)
    ,b as (select 0 b from dual)
    ,c as (select 0 c from dual)
select
  *
from a,
     lateral(select * from b where a.a=b.b)(+) bb
     left outer join c on c.c=bb.b
where a=1


при этом outer apply работает нормально, хотя lateral(...)(+) по идее аналог outer apply:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
with a as (select level a from dual connect by level<10)
    ,b as (select 0 b from dual)
    ,c as (select 0 c from dual)
select
  *
from a
     outer apply (select * from b where a.a=b.b) bb
     left outer join c on c.c=bb.b
where a=1
...
Рейтинг: 0 / 0
lateral: документирован ли (+) к латералу?
    #39835277
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xtender,

Вместо запятой пробуй cross join.
...
Рейтинг: 0 / 0
lateral: документирован ли (+) к латералу?
    #39835282
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
-2-xtender,

Вместо запятой пробуй cross join.ну уж нахрен - это еще менее документировано: lateral c (+) хотя бы есть в статье Марии Колган в официальном блоге, а тут по-прежнему будет lateral c (+), да еще и через cross join. Если уж переходить на анси, то лучше outer apply брать.
...
Рейтинг: 0 / 0
lateral: документирован ли (+) к латералу?
    #39835373
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xtenderну уж нахрен - это еще менее документированоОтнюдь. По синтаксису латерал такое же табличное выражение, как просто таблица. Получается нерекоммендованное смешивание фром через запятую и через анси-джоин.
...
Рейтинг: 0 / 0
lateral: документирован ли (+) к латералу?
    #39835424
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-нерекоммендованное смешивание фром через запятую и через анси-джоин.
Эээ... вроде как оно официально допускалось, не?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / lateral: документирован ли (+) к латералу?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (0):
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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