|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
Привет. Есть подобный запрос: Код: plsql 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.
Дак вот, вопрос такой: оправдано ли использование LATERAL в данном случае (как видно, только лишь для удобства) ? На мой взгляд, оптимизатор в любом случае перепишет (раскроет) LATERAL(SELECT FROM DUAL), и план не будет испорчен. Oracle 12.2 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2019, 22:14 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
--Eugene-- оправдано ли использование LATERAL в данном случае (как видно, только лишь для удобства) ? --Eugene-- Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 07:45 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
--Eugene-- только лишь для удобства Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 08:16 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
Elic, я почему спрашиваю: руководитель считает, что я очень неправ, применяя CROSS LATERAL таким образом, мол, это очень(!) опасно. мне бы ему привести какой-то аргумент.. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 12:23 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
--Eugene-- На мой взгляд, оптимизатор в любом случае перепишет (раскроет) LATERAL(SELECT FROM DUAL), и план не будет испорчен. Oracle 12.2 не совсем понятно с перепишет Код: plsql 1. 2. 3. 4. 5. 6.
..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 12:40 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
Stax, это что же значит, остаётся мучаться и копипастить выражения колонок ?.. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 12:51 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
--Eugene-- остаётся мучаться и копипастить выражения колонок ? --Eugene-- мол, это очень(!) опасно ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 13:01 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
-2- Имена выражениям можно дать в подзапросе. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 13:09 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
Elic cross apply короче. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 13:27 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
--Eugene-- Stax, это что же значит, остаётся мучаться и копипастить выражения колонок ?.. імхо в подзапрос (вью) select ... from (select ...) если волка не боятся то наверное можно и "латералом" вычислять мож со временем ето станет стандартным приемом (аля connect by без start) ps lateral относительно недавно появился, как бы он не стал источником багов/фич при ... ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 13:31 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
Stax lateral относительно недавно появился 29002488 Wrong Result With a Query Using Union All 28350595 poor performance on ansi join nested loops outer on aggregate view ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 14:04 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
--Eugene-- Elic cross apply короче. Суть в том, что ключевые слова cross apply есть в целях соответствия анси стандарту, а ключевое слово lateral есть потому Оракл всегда идет своим путём. Ну и синтаксически cross apply это частный случай join clause, а lateral - это частный случай query table expression. Предполагается что lateral для НЕлюбителей анси синтаксиса. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 16:42 |
|
LATERAL (SELECT FROM DUAL)
|
|||
---|---|---|---|
#18+
Elic А мне понравилось. желающие могут глянуть у себя Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.11.2019, 16:47 |
|
|
start [/forum/topic.php?fid=52&msg=39889347&tid=1881853]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 18ms |
total: | 159ms |
0 / 0 |