|
|
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
dbms_photoshopstax..вот я про третий и спрашиваю, как он выглядит?Я надеюсь ты просколлил до моего следующего ответа и увидел, что я имел в виду совершенно иные запросы. для меня сложно, все от так сразу понять/осознать я о запросе из 10записей топ 3 по какому то критерию, из миллионника для каждого из троих 100 первых зы 12 нет, и возможно и не предвидется но мне нравится lateral и я б его исполизол частенько, для меня так более наглядно кто, с кем и зачем ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 15:33 |
|
||
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
dbms_photoshopЯ подразумеваю, что речь идет про CBO и использую терминологию из http://www.oracle.com/technetwork/database/bi-datawarehousing/twp-general-query-optimization-10gr-130948.pdf Oracle has implemented a wide range of SQL transformations. These broadly fall into two categories: heuristic query transformations : These transformations are applied to incoming SQL statements whenever possible. These transformations always provide equivalent or better query performance, so that Oracle knows that applying these transformations will not degrade performance. cost-based query transformations : Oracle uses a cost-based approach for several classes of query transformations. Using this approach, the transformed query is compared to the original query, and Oracle’s optimizer then selects the best execution strategyЕще раз подчеркну, что не всегда возможно применить эвристическую трансформацию и получить эквивалентный запрос - это именно то, что я пытался сказать.там как всегда слишком упрощенно. В качестве примера подумай о use_concat - это эвристическая трансформация и зачастую она не применяется без форсирования хинтом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 17:35 |
|
||
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
dbms_photoshopЕсть подозрение, что нужного эффекта можно было бы добиться если создать дополнительную inline view и в ней соединять с view2, а снаружи с view3.сейчас некогда (да и лениво) пытаться воспроизвести, но такое не прокатывало, да и было неприменимо, т.к. запрос клеился динамически - к основе в зависимости от условий добавлялись дополнительные столбцы/таблички/вьюхи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 17:38 |
|
||
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
постараюсь не забыть запостить сюда пример, когда встречу такое в следующий раз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 17:39 |
|
||
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
а вообще это очень частая вещь, странно что ты ее не встречал еще ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 17:40 |
|
||
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
xtender, Согласно white paper, or-expansion - cost based, но он не ведет себя как cost based всегда. Я когда-то об этом писал уже. В любом случае, это имеет очень отдаленное отношение к тому, с чего началась дискуссия. Диалог был бы конструктивнее, если бы ты пытался понять что я говорю вместо того, чтобы делать какие-то предположения о том, чего я не заявлял и "открывать мне глаза". Если я тебя задел этим dbms_photoshopнормальный разработчик не будет писать Код: plsql 1. 2. 3. 4. вместо Код: plsql 1. 2. 3. 4. я, конечно, приношу извинения, но я крайне сомневаюсь, что ты всегда напишешь lateral вместо обычного соединения. В качесве workaround, допускаю. Последнее, я надеюсь, ты согласен, что при наличии stopkey в lateral он не может быть decorrelated по логическим причинам, а не в связи с критериями в текущей реализации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 21:52 |
|
||
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
xtenderа вообще это очень частая вещь, странно что ты ее не встречал ещеЧастая вещь - "оптимизация проталкивания" путем использования lateral? Да, признаюсь, я таким не занимался и постараюсь избежать подобных подходов в будущем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 21:54 |
|
||
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
dbms_photoshop, Ты как-то близко все к себе принимаешь, я вообще то всего лишь к слову упомянул, что латералы могут быть трансформированы в hj... Дальнейшие выпады были только от тебя... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 22:18 |
|
||
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
dbms_photoshopxtenderа вообще это очень частая вещь, странно что ты ее не встречал ещеЧастая вещь - "оптимизация проталкивания" путем использования lateral? Да, признаюсь, я таким не занимался и постараюсь избежать подобных подходов в будущем.если непонятно, то я имел ввиду что зачастую предикаты не пушатся когда надо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 22:19 |
|
||
|
Выбрать первые 3 позиции в группировке
|
|||
|---|---|---|---|
|
#18+
xtenderты путаешь xtenderподумай оЭто не мне было адресовано? Ок. Не буду занудствовать. xtenderесли непонятно, то я имел ввиду что зачастую предикаты не пушатся когда надоВсе осталось несколько абстрактно, но я думаю ты опубликуешь пример при случае. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2017, 22:40 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39455042&tid=1885922]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
157ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 462ms |

| 0 / 0 |
