TGViewer
data будни data будни @data_days · 1.47K subscribers
Post #251 987

Forwarded from Daily Data Chat

Продолжение...
В качестве замеров используем EXPLAIN Postgres - если, его выполнять как EXPLAIN ANALYZE, то получим фактическое время выполнения запроса - пример на первом рисунке.

Далее формируем два запроса:
Первый - в условии указываем полное время без преобразований
explain analyze select *
from sensors.weather w
where w.ts between '2021-01-01 00:00:00' and now();


Второй - в условии экстрактим год и берем всё больше 2021
explain analyze select *
from sensors.weather w
where extract ('year' from w.ts) >= 2021;


В исходной таблице есть индекс по полю ts.

Добавим щепотку статистики, чтобы не сравнивать два случайных времени, выполним и тот и другой 100 раз, строим боксплоты. Вперед.


Основной результат: отсуствие преобразований в WHERE дает 4х прирост к скорости выполнения запрос (естественно на этих данных и таком кол-ве, можно будет проверить как зависит от объема данных)

Детальный результат - 2 рисунка плана выполнения запросов, как только появляется преобразование в WHERE то мы имеем дело с SeqScan, без EXTRACT планировщик использует Bitmap Heap Scan \ Bitmap Index Scan

Вот такая арифметика, используйте SQL c умом

#de #sql #lifehacks
  • 👍 14
More from @data_days
  1. Sep 28, 2026🤩 delirious dhh итак, прослушал ~5ч одного небезызвестного программиста с сильными взгляд…
  2. Apr 21, 2026мне кажется последние два интервью отлично смотрятся вместе и дополняют друг друга >_> и о…
  3. Apr 21, 2026🥷 DHH об agent-first подходе DHH — известный ии-скептик и сторонник написания кода вручну…
  4. Apr 19, 2026🦄 руководитель Claude Code об AI в разработке послушал интервью Бориса Чёрного в подкасте…
  5. Feb 5, 2026📁 про культуру ведения тикетов продолжаю рассказывать про внутрянку нашей команды, привле…
  6. Feb 4, 2026🦀 Clawdbot / Moltbot / OpenClaw там похоже намечается очередной качественный скачок аи-ст…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →