Как Вы дебажите код?
Anonymous Poll
34%
Использую отладчик
13%
Настраиваю логировоние и смотрю логи
41%
С помощью print, а как же еще
12%
А что такое "дебажить код"? -_-
🌴 Последний герой: Блок else в циклах Python
Очередной непрошенный совет от IT Resume 😅
Недавно в рубрике GROK IT была задача на использование блока else в цикле for. Многим эта задачка показалась непростой и многие допустили ошибку (58%!), поэтому мы решили дополнительно осветить этот вопрос в отдельном посте!
Море, солнце и пальмы сигнализируют о том, что пора в отпуск. Узнали что-то новое - пора и отдохнуть 😂
Очередной непрошенный совет от 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-запросов 👉🏻 в наших карточках
🗣 А какие способы повышения производительности запросов обычно используете Вы?)
Сегодня разбираем простой пример, в котором мы за несколько нажатий по клавиатуре оптимизировали 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-запросов 👉🏻 в наших карточках
🗣 А какие способы повышения производительности запросов обычно используете Вы?)
Что выведет запрос?
Anonymous Quiz
13%
NULL, 2, NULL
16%
2, NULL, 1
25%
NULL, NULL, NULL
46%
1, NULL, 2
Что творится в мире IT: Stack Overflow Developer Survey 2021 💥
Ежегодно уже на протяжении почти десяти лет Stack Overflow проводит крупнейший опрос разработчиков (как профессионалов, так и любителей).
Там затрагиваются как личностные качества разработчиков (пол, возраст, ориентация и т. д.), так и профессиональный стек технологий, образование, вопросы трудоустройства и многое другое.
Каждый год мы активно следим за публикацией результатов опроса и каждый раз находим что-нибудь интересное 🔥
Если Вы еще не успели познакомиться с опросом, то мы подготовили для Вас краткую выжимку.
P.S. Полные результаты опроса - по ссылке в комментариях 😉
Ежегодно уже на протяжении почти десяти лет Stack Overflow проводит крупнейший опрос разработчиков (как профессионалов, так и любителей).
Там затрагиваются как личностные качества разработчиков (пол, возраст, ориентация и т. д.), так и профессиональный стек технологий, образование, вопросы трудоустройства и многое другое.
Каждый год мы активно следим за публикацией результатов опроса и каждый раз находим что-нибудь интересное 🔥
Если Вы еще не успели познакомиться с опросом, то мы подготовили для Вас краткую выжимку.
P.S. Полные результаты опроса - по ссылке в комментариях 😉
GROK IT!
❓Задача по Python: Что выведет код?
Правильный ответ раскроем завтра 😏
#grokit #grokit_sql #sql
❓Задача по Python: Что выведет код?
Правильный ответ раскроем завтра 😏
#grokit #grokit_sql #sql