Simulative – Telegram
7.4K subscribers
1.7K photos
70 videos
1 file
1.26K links
Привет! Мы — образовательная платформа в сфере аналитики Simulative: simulative.ru

Создаём курсы-симуляторы, где обучаем не на «апельсинках», а на кейсах из реального бизнеса.

Наш уютный чат: @itresume_chat
Поддержка: @simulative_support
Download Telegram
🌴 Последний герой: Блок else в циклах Python

Очередной непрошенный совет от IT Resume 😅

Недавно в рубрике GROK IT была задача на использование блока else в цикле for. Многим эта задачка показалась непростой и многие допустили ошибку (58%!), поэтому мы решили дополнительно осветить этот вопрос в отдельном посте!

Море, солнце и пальмы сигнализируют о том, что пора в отпуск. Узнали что-то новое - пора и отдохнуть 😂
​​💣 Как оптимизировать SQL запрос в 125 раз?

Сегодня разбираем простой пример, в котором мы за несколько нажатий по клавиатуре оптимизировали SQL-запрос в 125 раз. Да, это не шутка, в 125❗️

Как это получилось?

У нас есть исходная таблица. Она содержит 2 поля. В каждом поле по 100000 последовательных чисел. Надо отметить, что не такая уж и большая таблица - в боевых базах таблицы обычно побольше.

Мы пишем запрос, который выбирает только те строки, где значение в столбце c1 будет больше 500 и меньше 550 после прибавления к этому значению 10. Казалось бы - куда проще? Отнюдь. С помощью команды EXPLAIN и параметров ANALYZE (для отображения фактического времени выполнения запроса) и VERBOSE (вывод дополнительной информации) мы проверяем фактическое время выполнения запроса. Получилось 21 мсек. Это много или мало?

Проверим это, сделав несколько преобразований, которые всегда надо учитывать при оптимизации запросов ☝🏻

→ Использование астериска (*) в запросе SELECT - Ваш враг. Лучше укажите нужный столбец. Мы указали только c1 (потому что c2 такой же в нашем примере).

→ Конструкцию c1 + 10 мы убрали - зачем заставлять компьютер к каждому числу каждый раз прибавлять 10? Прибавить к 100 000 чисел десятку - значит совершить 100 000 лишних операций (как минимум). Лучше вычесть 10 из левой и правой границы (т.е. из 500 и 550, соответственно).

→ Логическое И (AND) и операторы сравнения мы заменили на BETWEEN.

→ В конце мы добавили LIMIT 50, т.к. с нашим фильтром все равно больше 50 строк не получится в ответе.

И что мы видим? Результаты говорят сами за себя: полученная скорость - 0.173 мс, что в 125 раз быстрее!

Согласитесь, впечатляет 🤤

Больше способов оптимизации SQL-запросов 👉🏻 в наших карточках

🗣 А какие способы повышения производительности запросов обычно используете Вы?)
В прошлом посте комментарии не прикрепились, так что пишите здесь 😉
​​GROK IT!

Задача по SQL: Что выведет запрос?

Правильный ответ раскроем завтра 😏

#sql
Что выведет запрос?
Anonymous Quiz
13%
NULL, 2, NULL
16%
2, NULL, 1
25%
NULL, NULL, NULL
46%
1, NULL, 2
GROK IT!

Ответ на задачу про функцию NULLIF в SQL 🔔

Ответ ищите в карточках 😉

#sql
Что творится в мире IT: Stack Overflow Developer Survey 2021 💥

Ежегодно уже на протяжении почти десяти лет Stack Overflow проводит крупнейший опрос разработчиков (как профессионалов, так и любителей).

Там затрагиваются как личностные качества разработчиков (пол, возраст, ориентация и т. д.), так и профессиональный стек технологий, образование, вопросы трудоустройства и многое другое.

Каждый год мы активно следим за публикацией результатов опроса и каждый раз находим что-нибудь интересное 🔥

Если Вы еще не успели познакомиться с опросом, то мы подготовили для Вас краткую выжимку.

P.S. Полные результаты опроса - по ссылке в комментариях 😉
​​GROK IT!

Задача по Python: Что выведет код?

Правильный ответ раскроем завтра 😏

#grokit #grokit_sql #sql