|
7 / 7 / 1
Регистрация: 24.01.2017
Сообщений: 229
|
||||||
SQL неправильно предполагает количество строк в запросе09.09.2019, 14:40. Показов 1861. Ответов 3
Метки нет (Все метки)
У меня есть две таблицы, одна с основными данными, а другая с кэшированными результатами.
Мне нужно вычислять суммы по диапазонам дат и поэтому я сделал таблицу для возможности сохранять уже рассчитанные результаты. Вот часть моего запроса, которая создаёт взаимодействие между основной таблицей и кэшем. Суть в том, чтобы сначала попытаться найти данные в кэше, и если их там нет, то уже рассчитать сумму по данным из основной таблицы.
Результаты запрос выдаёт верные, - FromCache везде равен 1. Но почему читаются данные из основной таблицы мне не понятно. Где я ошибся?
0
|
||||||
| 09.09.2019, 14:40 | |
|
Ответы с готовыми решениями:
3
Конкатенация строк в sql запросе Ошибка в SQL-запросе: "Неправильно определен параметр" |
|
3614 / 2135 / 756
Регистрация: 02.06.2013
Сообщений: 5,169
|
|
| 09.09.2019, 15:00 | |
|
1. План выполнения строится в общем виде, ибо невозможно предсказать какие данные реально будут обработаны.
2. 80% это не время, а стоимость конкретного оператора в плане относительно всего плана. 3. Планы нужно анализировать актуальные, а не оценочные. Тогда по Actual Rows можно судить о количестве прочитанных строк.
0
|
|
|
7 / 7 / 1
Регистрация: 24.01.2017
Сообщений: 229
|
|
| 09.09.2019, 15:13 [ТС] | |
|
Я и имел в виду актуальный план, а не оценочный. Количество прочитанных строк - 700, оценочное - >5млн. Эти 700 строк это как раз данные, которые нельзя поместить в кэш, из-за того что они не покрывают нужный диапазон дат.
Всё равно, сумма по этим 700 строкам считается несколько миллисекунд, а сам запрос выполняется около 3с (результат 5000 строк), это очень долго. При этом поиск индекса в кэше указывается в 0% от стоимости запроса. Добавлено через 6 минут Да, сейчас увидел, что фильтр WHERE [Cache].[DateStart] IS NULL в плане выполняется после [Main].[DateTime] BETWEEN [Dates].[DateStart] AND [Dates].[DateEnd], т.е. этот кусок отрабатывает впустую.
0
|
|
|
3614 / 2135 / 756
Регистрация: 02.06.2013
Сообщений: 5,169
|
|
| 09.09.2019, 15:16 | |
|
SharpProg, показывайте актуальный план в формате sqlplan
0
|
|
| 09.09.2019, 15:16 | |
|
Помогаю со студенческими работами здесь
4
Избежать конкатенации строк при запросе SQL
Access: Как узнать количество строк в запросе? Получить среднее и количество строк в одном запросе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|