Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. авторTable 'syssingleobjrefs'. Scan count 32, logical reads 96, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. Table 'syspalvalues'. Scan count 0, logical reads 32, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. Table 'syspalnames'. Scan count 0, logical reads 32, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. Table 'sysschobjs'. Scan count 1, logical reads 43, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. Что-то я не вижу попыток заехать в тембдб. СТЕ есть, а "Объекта СТЕ" в тембдебе нету, миииистикааааа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 17:41 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
CammomileЧто-то я не вижу попыток заехать в тембдб. СТЕ есть, а "Объекта СТЕ" в тембдебе нету, миииистикааааа. Бы ли бы Вы хоть на йоту образованней, то использовали CTE в таком запросе, где его использование оправдано, а не пытались придумать настолько тупой запрос, который оптимизатор спокойно развернул без CTE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 18:19 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
Ого, сначала у него " итак понятно что объект не объект , а данные для запроса". Теперь у него " итак понятно, что СТЕ не СТЕ". С таким балаболом мастером пера сложно вести предметный разговор... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 18:27 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
CammomileС таким балаболом мастером пера сложно вести предметный разговор... Самокритично Вы про себя ) Насколько Тапок есть флудер и дитя бескультурное, но даже он написал с CTE запрос, создающий и Worktable И Workfile ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 18:31 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
ptr128CammomileС таким балаболом мастером пера сложно вести предметный разговор... Самокритично Вы про себя ) Насколько Тапок есть флудер и дитя бескультурное, но даже он написал с CTE запрос, создающий и Worktable И Workfile ))) рыбка, тебе же уже сказали про 0 или уже забыла? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 18:37 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
TaPaKрыбка, тебе же уже сказали про 0 или уже забыла? А Вам сказали, что если на автомобиле не ездить, то для него и топливо не нужно? Или про то, что если его толкать или тянуть буксиром, то можно ездить без топлива? Следует ли из этого, что автомобиль не использует топливо? ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 18:44 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
ptr128который оптимизатор спокойно развернул без CTE.А можете привести пример запроса, который оптимизатор не "разворачивает без CTE". Или, хотя бы, какой-нибудь признак в плане выполнения по которому можно понять, что CTE не "развернут". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 19:11 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
invmptr128который оптимизатор спокойно развернул без CTE.А можете привести пример запроса, который оптимизатор не "разворачивает без CTE". Или, хотя бы, какой-нибудь признак в плане выполнения по которому можно понять, что CTE не "развернут". Так я же писал: ptr128Насколько Тапок есть флудер и дитя бескультурное, но даже он написал с CTE запрос, создающий и Worktable И Workfile ))) Вот его запрос: TaPaK Код: sql 1. И он честно выдает: Код: sql 1. 2. 3. Workfile и Worktable в tempdb созданы. Но из-за простоты запроса не понадобились. Если же использовать CTE "по назначению", то есть для рекурсивного запроса, взяв образец, например, из документации : Код: 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. То увидим уже активную работу с Worktable в tempdb: Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 19:24 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
ptr128, Так что есть признак "неразворачиваемости"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 21:04 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
invmptr128, Так что есть признак "неразворачиваемости"? Вам надо, Вы и исследуйте. Мне уже эта тема изрядно поднадоела. Если дети хотят использовать где ни попадя CTE - пусть используют. Тех, которые прийдут ко мне, сам переучу, продемонстрировав его ущербность на больших объемах данных. А остальные пусть работают на конкурентов ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 21:14 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
ptr128Вам надо, Вы и исследуйте.Т.е. вы таки почти четыре страницы заливали о том, о чем сами ничего не знаете.ptr128Мне уже эта тема изрядно поднадоелаСамо собой. Так обычно случается, когда нечего ответить на вопросы и аргументы оппонентов.ptr128Тех, которые прийдут ко мне, сам переучу, продемонстрировав его ущербность на больших объемах данных.Только не берите тех, которые смогут раскусить вашу собственную ущербность в данном вопросе. Или въедливых, которые будут доставать вопросом "а почему?". Иначе изрядно поднадоест переучивать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 22:16 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
ptr128alexeyvg"Объектов CTE и вложенных запросов" просто не существует как явления Смысл придираться к словам? По смыслу и так ясно, что речь идет об "объектах создаваемых CTE" и "объектов создаваемых вложенными запросами"Придираюсь? Тут все именно так трактуют ваши слова. Ещё раз спрошу: я не понимаю, почему в фразе "Объекты CTE, ..., вложенных запросов и т.п. размещаются в tempdb" вами не упомянуты обычные запросы из одной таблицы, даже без группировок? Фраза была бы вполне закончена: "Объекты CTE, всех запросов и т.п. размещаются в tempdb" И она бы по крайней мере хоть немножко бы соответствовала действительности, пусть с корявой формулировкой. Вложенные запросы, и их разновидность "CTE", не отличаются в этом смысле от каких либо других запросов. CTE и вложенные запросы не отличаются от оператора join. Для сервера нету никаких особых "CTE" и "вложенных запросов", нет операторов database engine для них, есть просто синтаксис "SQL", его семантика после синтаксического анализа преобразуется в операторы обработки множеств, потом оптимизатор из этого делает исполняемые операторы для database engine, он выполняет эти операторы, и если памяти маловато, то он использует для промежуточного хранения tempdb. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 22:35 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
invmТак обычно случается, когда нечего ответить на вопросы и аргументы оппонентов. Я не вижу вопросов и аргументов от Вас по интересующей меня теме. В упор. Вы очень захотели знать, по какому признаку можно узнать, использована будет tempdb при CTE запросе или нет. Каким образом это относится к моему утверждению мне совершенно не понятно. "Объекты CTE, табличных переменных, вложенных запросов и т.п. размещаются в tempdb." Я нигде не писал, что "всегда размещаются", или "обязательно размещаются". Я просто привел ссылки на MS, доказывающие мое утверждение. Мне совершенно не интересны частные случаи когда CTE не используют tempdb, из-за того, что такие случаи имеют нулевую практическую ценность. Вашу просьбу "А можете привести пример запроса, который оптимизатор не "разворачивает без CTE"." я удовлетворил. И что происходит даже на примитивном рекурсивном запросе с CTE - я Вам продемонстрировал. Вы и так уже признались, что были не в курсе того, что tempdb использует оперативную память, пока ее достаточно и то, что не знали, что CTE, табличные переменные и вложенные запросы размещают создаваемые ими внутренние объекты в tempdb. (Я перефразировал фразу "Объекты CTE, табличных переменных, вложенных запросов...", так как Вы признались, что у Вас проблемы с русским языком и Вы искренне считаете CTE, переменные и запросы внутренними объектами SQL) Короче, или по теме, или общайтесь сами с собой. Я Вам ничего не обязан. И обучать того, кто учиться не желает тоже не собираюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 22:36 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
ptr128Если же использовать CTE "по назначению", то есть для рекурсивного запроса, взяв образец, например, изБоже, ну там же прямое указание использовать tempdb Выполните то же самое без CTE: Код: sql 1. 2. 3. 4. HASH - вот волшебное слово, а не CTE Уберите слово HASH из вашего запроса с CTE - и будет без worktable ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 22:53 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
[quot alexeyvg]ptr128пропущено... Смысл придираться к словам? По смыслу и так ясно, что речь идет об "объектах создаваемых CTE" и "объектов создаваемых вложенными запросами"Придираюсь? Тут все именно так трактуют ваши слова. Я уже извинился: ptr128Извините, я не учел, что здесь не все владеют русским и в фразе "Объекты строительства" считают само строительство объектом. alexeyvgЕщё раз спрошу: я не понимаю, почему в фразе "Объекты CTE, ..., вложенных запросов и т.п. размещаются в tempdb" вами не упомянуты обычные запросы из одной таблицы, даже без группировок? Во-первых, приведите доказательство того, что "обычный запрос из одной таблицы [...] без группировок" размещает внутренний объект в tempdb. И без сортировки, пожалуйста ) Во-вторых, там еще очень много что не упомянуто: курсоры, почта, события, индексы, версионирование строк, триггеры и т.п. Совершенно не вижу смысла перечислять все. Речь была вообще то исключительно о том, что CTE создает объекты в tempdb. Остальное просто к слову пришлось ) alexeyvgФраза была бы вполне закончена: "Объекты CTE, всех запросов и т.п. размещаются в tempdb" Ну а как же курсоры, индексы и версионирования строк? ))) Еще раз, речь шла именно о CTE. Кстати, что интересно, вложенные запросы только Вас возбудили. Хотите извинюсь? Они ведь тоже не всегда порождают что-то в tempdb. Но уж если создают объект - размещают его именно там. ))) alexeyvgВложенные запросы, и их разновидность "CTE", не отличаются в этом смысле от каких либо других запросов. CTE и вложенные запросы не отличаются от оператора join. Увы, и те, и другие, различаются, причем очень существенно. А именно тем, что не предоставляют возможность создать по результату их выполнения необходимых индексов. alexeyvgон выполняет эти операторы, и если памяти маловато, то он использует для промежуточного хранения tempdb. Наоборот, я уже приводил цитату и ссылку: "If memory is available, both table variables and temporary tables are created and processed while in memory (data cache)." Но даже это не так уж важно. Для меня важно то, что для временных таблиц я легко могу создать необходимые мне индексы, а для CTE, табличных переменных и подзапросов - нет. И именно поэтому на больших объемах данных эти механизмы проигрывают в производительности старым добрым временным таблицам. Которые, к тому же, можно размещать, при большом желании, in-memory. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 22:54 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
alexeyvgБоже, ну там же прямое указание использовать tempdb Уберите слово HASH из вашего запроса с CTE - и будет без worktable Это не мой запрос. И вы пропустили развитие тему. Там как раз явно было сказано, что HASH JOIN точно создаст объект в tempdb. ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 22:56 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
ptr128alexeyvgБоже, ну там же прямое указание использовать tempdb Уберите слово HASH из вашего запроса с CTE - и будет без worktable Это не мой запрос. И вы пропустили развитие тему. Там как раз явно было сказано, что HASH JOIN точно создаст объект в tempdb. )))Ваш - я имел в виду тот запрос, который вы привели. Может, я что то пропустил, я просто смотрю на эти фразы: ptr128Он от момента рождения CTE так и делал. Попробуйте прогнать CTE на большим объемом данных и понаблюдайте за Tempdbиptr128Объекты CTE, табличных переменных, вложенных запросов и т.п. размещаются в tempdb. и конкретный пример с статистикой и HASH. И сравниваем с цитируемой фразой: ptr128can use internal objects to store intermediate results for hash joins, hash aggregates, or sorting. В которой тоже не говорится, что CTE и вложенные запросы - объекты, хранимые в tempdb, а всего лишь то, что выполнение этого может потребовать использовать tempdb Согласитесь уже, что реальность, а так же цитируемые источники имеют совершенно противоположный смысл вашим утверждениям. Ещё раз, сравните: - " Объекты CTE, табличных переменных, вложенных запросов и т.п. размещаются в tempdb" и - " некоторые операторы database engine, например, hash joins, hash aggregates, или sorting, могут использовать tempdb" Тут собрались люди, достаточно хорошо знающие сиквел, почитывающие блоги писателей ядра сиквела, и даже заходят те, кто сами пишет об этом книги, и им режет взгляд такая вольная интерпретация. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 23:11 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
ptr128Вы очень захотели знать, по какому признаку можно узнать, использована будет tempdb при CTE запросе или нет.Читайте внимательно вопрос и не пытайтесь уйти в сторону - меня интересует признак "нераскрываемости" CTE. Т.е., признак того, что результат CTE где-то материализуется. ptr128Каким образом это относится к моему утверждению мне совершенно не понятно. "Объекты CTE, табличных переменных, вложенных запросов и т.п. размещаются в tempdb."Из всего перечисленного к объектам относятся только табличные переменные. Остальное - ваши фантазии.ptr128Я нигде не писал, что "всегда размещаются", или "обязательно размещаются".Серьезно? А тут - 21051012 , 21051358 ?ptr128Мне совершенно не интересны частные случаи когда CTE не используют tempdb, из-за того, что такие случаи имеют нулевую практическую ценность.Не расписывайтесь за всех. ptr128Вашу просьбу "А можете привести пример запроса, который оптимизатор не "разворачивает без CTE"." я удовлетворил.Где? Пока только словоблудие и попытки уйти от ответов на конкретные вопросы.ptr128Вы и так уже признались, что были не в курсе того, что tempdb использует оперативную память, пока ее достаточно и то, что не знали, что CTE, табличные переменные и вложенные запросы размещают создаваемые ими внутренние объекты в tempdb. (Я перефразировал фразу "Объекты CTE, табличных переменных, вложенных запросов...", так как Вы признались, что у Вас проблемы с русским языком и Вы искренне считаете CTE, переменные и запросы внутренними объектами SQL)Да-да. И это мы еще не перешли к вопросу про житиё tempdb в in-memory OLTP. Там моя вопиющая безграмотность проявится еще ярче... И особенно интересно узнать, где свои "внутренние объекты" размещают "невложенные" запросы? Наверное в секретном месте...ptr128Короче, или по теме, или общайтесь сами с собой.Клиент слился... Почему-то неудивительно.ptr128И обучать того, кто учиться не желает тоже не собираюсь.Прежде чем кого-то обучать, неплохо самому изучить предмет преподавания. А вы даже общепринятой терминологией не владеете. Так что обучателем премудростям CTE вам не стать, увы. ЗЫ: Не пытайтесь сохранить лицо, неся полнейший бред. Эффект ровно противоположный - выглядете еще большим идиотом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 23:11 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
invmменя интересует [...] признак того, что результат CTE где-то материализуется. Ну и интересуйтесь. Я тут при чем? Мне достаточно того, что объект, создаваемый CTE "материализуется" в иерархическом запросе, что я, кстати, доказал. Код: sql 1. 2. invmptr128"Объекты CTE, табличных переменных, вложенных запросов и т.п. размещаются в tempdb." Из всего перечисленного к объектам относятся только табличные переменные. Я в шоке! То есть Вы и вправду относитесь к тем, кто ptr128"в фразе "Объекты строительства" считают само строительство объектом." invmptr128Я нигде не писал, что "всегда размещаются", или "обязательно размещаются".Серьезно? А тут - 21051012 , 21051358 ? У Вас галлюцинации? Найдите там слова "всегда" или "обязательно". Можно с трех попыток ))) invmptr128Мне совершенно не интересны частные случаи когда CTE не используют tempdb, из-за того, что такие случаи имеют нулевую практическую ценность.Не расписывайтесь за всех. Выделите, пожалуста, в моей фразе слово "всех" ))) invmptr128Вашу просьбу "А можете привести пример запроса, который оптимизатор не "разворачивает без CTE"." я удовлетворил.Где? Глаза протрите! Второй запрос в посте 21053346 после фразы "Если же использовать CTE "по назначению"..." invmПока только словоблудие Вот уж точно вы про себя ))) invmи попытки уйти от ответов на конкретные вопросы. Извините, но если среди Вашего "словоблудия" и был конкретный вопрос, то я его пропустил. Пожалуйста, повторите его. Если он будт по теме - я на него отвечу. Но именно вопрос, а не просьба провести какие-то эксперименты или обучить Вас различать CTE запросы, создающие временные объекты в tempdb, от тех, которые такие запросы не создают. invmк вопросу про житиё tempdb в in-memory OLTP. Вот тут я соглашусь что погорячился и был не прав. MS под словосочетанием "in-memory OLTP" сейчас понимает совершенно отдельную компоненту внутри SQL сервера, несмотря на то, что ранее средства кеширования в памяти tempdb он тем же самым словосочетанием называл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 23:58 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
alexeyvgptr128Это не мой запрос.)))Ваш - я имел в виду тот запрос, который вы привели. Выделите, пожалуйста, в нем слово HASH: Код: 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. alexeyvgМожет, я что то пропустил, я просто смотрю на эти фразы: ptr128Он от момента рождения CTE так и делал. Попробуйте прогнать CTE на большим объемом данных и понаблюдайте за Tempdbиptr128Объекты CTE, табличных переменных, вложенных запросов и т.п. размещаются в tempdb. Явно пропустили. Где тут сказано, что всегда или обязательно ? Да, внутренние объекты SQL сервера, создаваемые при использовании CTE "размещал" и "размещаются" в tempdb. Если CTE, вложенные запросы и т.п. объектов не создают, то и размещать нечего. Или Вы опять будете требовать от меня извинений за то, что считаете "строительство" объектом? Ну пожалуйтта, ну проститете! ))) alexeyvgptr128can use internal objects to store intermediate results for hash joins, hash aggregates, or sorting. В которой тоже не говорится, что CTE и вложенные запросы - объекты, хранимые в tempdb, а всего лишь то, что выполнение этого может потребовать использовать tempdb Во-первых, в оригинале эта фраза звучала, как ptr128Queries that contain SELECT, INSERT, UPDATE, and DELETE statements can use internal objects to store intermediate results for hash joins, hash aggregates, or sorting. Даже слова CTE в ней не было. Потому что она совсем из другой строки таблицы по ссылке. Во-вторых, действительно, не любой запрос, содержащий "SELECT, INSERT, UPDATE, and DELETE" будет создавать "internal objects" и хранить их в tempdb. Для этого, у него, как минимум, должна возникнуть необходимость такой объект создать. А одно из необходимых (но не достаточное!) условий, для того, чтобы такой объект создался, как раз и есть "вложенный запрос". К которому цитата и относилась. 21051662 alexeyvgТут собрались люди, достаточно хорошо знающие сиквел, почитывающие блоги писателей ядра сиквела, и даже заходят те, кто сами пишет об этом книги, и им режет взгляд такая вольная интерпретация. О господи! А уже подумал, что Вы хоть что-то понимаете в обсуждаемом вопросе. А Вы вдруг, как дите малое решили пиписьками меряться ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 00:17 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
Модератор: Уважаемый ptr128! Не могли бы вы к вашим оппонентам чуть-чуть с большим уважением относиться? Ну, чтобы профилактические баны не пришлось выписывать. Спасибо за понимание. Модератор: UPD: в этой теме это качается не только лишь некоторых. Давайте жить дружно, все дела. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 01:03 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
alexeyvgТут собрались люди, достаточно хорошо знающие сиквел, почитывающие блоги писателей ядра сиквела, и даже заходят те, кто сами пишет об этом книги, и им режет взгляд такая вольная интерпретация. Приношу публично извинения за "пиписьками меряться". Вы меня не оскорбляли, в отличии от некоторых. Поэтому считаю, что я явно погорячился. Но мериться регалиями с незнакомыми людьми, право, не стоит. Так же считаю эту тему закрытой. Несмотря на обилие постов, почему-то, почти никто кроме меня не приводил никаких доказательств своих утверждений, что загадило тему флудом и догматизмом. Все, что я хотел донести, так это то, что при использовании CTE, табличных переменных и вложенных запросов, MS SQL не предоставляет возможности индексации результирующего набора данных. Что может привести (на больших объемах данных и сложных запросах) к худшей производительности, чем при явном использовании временных таблиц с разумно созданными индексами. Если кто-то с этим не согласен - мне, по большому счету, безразлично. Жаль только тех, кто почитав весь этот прессинг на меня решит, что CTE, табличные переменные и вложенные запросы можно смело использовать на терабайтных БД и миллиардах записей. Желающие могут дальше придираться к словам, стилическим и синтаксическим ошибкам и даже к конкретным буквам ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 02:25 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
ptr128Все, что я хотел донести, так это то, что при использовании CTE, табличных переменных и вложенных запросов, MS SQL не предоставляет возможности индексации результирующего набора данных.Табличные переменные индексировать можно: Код: sql 1. В зависимости от версии сиквела и поведения оптимизатора, такая добавка может очень сильно улучшить ситуацию. Ваша проблема в том, что вы, со своими терабайтными объемами, зачем-то пришли в раздел форума, в котором, если явно не сказано иное, по умолчанию подразумевается OLTP-нагрузка. Т.е. точечные запросы. Вы уже второй олапер, за последнее время, кто приходит сюда и начинает мудро вещать, основываясь на своих умолчаниях. Именно этим обусловлена такая реакция профессионалов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 06:09 |
|
||
|
Вложенный запрос
|
|||
|---|---|---|---|
|
#18+
Ennor TiegaelТабличные переменные индексировать можно:[src] declare @t table (Id int primary key); Простите, у меня язык не повернулся назвать это возможностью индексирования. Это все же, скорее, ограничение (constraint). Да, это частный случай индексирования, но его возможности настолько уступают возможностям CREATE INDEX, что, лично для меня, этого уже достаточно для того, чтобы отказаться от использования табличных переменных. Благо временной таблицей их заменить можно всегда. Ennor TiegaelИменно этим обусловлена такая реакция профессионалов. И это Вы называете "реакцией профессионалов"? ))) TaPaKкак же таких sql то терпит.... дарагуля и де там про жизнь в оперативке? упоротые бараны больше всего веселят ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 09:03 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39574104&tid=1690628]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 248ms |
| total: | 389ms |

| 0 / 0 |
