SQL и Базы Данных
Open in Telegram
Задачи по базам данных и SQL Основы языка SQL, задачи и решения к ним. Админ: @anothertechrock
Show more3 725
Subscribers
-124 hours
+47 days
-1130 days
Posts Archive
3 725
Подзапросы в SQL
В этом видеоуроке автор подробно рассматривает работу с подзапросами в SQL. Вы разберете синтаксис подзапросов и узнаете как их использовать.
0:00 Вступление
0:15 Подзапросы
2:13 Значение подзапросов
4:12 Предикаты с подзапросами
4:26 Использование агрегатных функций
5:49 Оператор IN
8:10 Одиночные столбцы
8:35 Выражение
8:58 Предложение HAVING
9:17 Итог
Смотреть это видео на youtube: youtu.be/pIFiw2IjFHE
3 725
Чем больший объем данных используют на проекте, чем выше нагрузка на систему – тем более продвинутый SQL нужен разработчикам. Изучить SQL и свободно использовать его в работе поможет курс Практикума.
После 3 месяцев курса разработчики смогут:
— уверенно пользоваться простыми селектами, джоинами, индексами и оконными функциями;
— отладить запрос, который сгенерирован через ORM;
— составить сложные запросы на нативном SQL;
— применить продвинутый SQL, чтобы писать код для высоконагруженных систем,
— чувствовать себя спокойно на собеседованиях.
Записывайтесь и растите в карьере.
Реклама АНО ДПО "Образовательные технологии Яндекса", ИНН:7704282033, erid:LjN8KD49u
3 725
С помощью какого update-запроса можно обновить значения более чем одной колонки?
3 725
👉Присоединяйтесь к нашему сообществу Data Analyst REBRAIN, если вы интересуетесь аналитикой данных, управлением проектами или маркетингом.
У нас для вас есть множество открытых онлайн-практикумов каждый месяц, которые проводят профессиональные аналитики. В рамках практикумов мы разбираем реальные кейсы анализа данных с использованием самых актуальных инструментов, таких как Python, SQL, Tableau, бизнес-метрики и визуализация данных, статистика, теория вероятностей и другие.
Уровень сложности и направление каждого практикума подобраны таким образом, чтобы каждый мог найти для себя интересные задачи и развиваться в соответствии с уровнем своей компетенции.
✔️ Подключайтесь к нам уже сегодня и начинайте развивать свои навыки в области анализа данных совершенно бесплатно!
3 725
Трюк дня. Сравнение с предыдущим. Решение.
Решение: использование
DATEDIFF
DATEDIFF: эта функция вычисляет разницу между двумя датами. Она используется для того, чтобы обеспечить сравнение именно «сегодняшних» и «вчерашних» температур.
Если сформулировать обычным языком следующий запрос, то окажется, что он выражает следующую идею: нужно выбрать такие идентификаторы, чтобы температура, соответствующая представляемым ими датам, была бы больше, чем температура на «вчерашние» по отношению к ним даты.
SELECT DISTINCT a.Id FROM Weather a, Weather b WHERE a.Temperature > b.Temperature AND DATEDIFF(a.Recorddate, b.Recorddate) = 1#tips
3 725
Трюк дня. Сравнение с предыдущим
Напишите SQL-запрос, который находит в таблице
weather все даты (идентификаторы дат), когда температура была бы выше температуры на предшествующие им даты. То есть, нас интересуют даты, в которые «сегодняшняя» температура выше «вчерашней».
Решение будет завтра.
#tips3 725
💻 Умение работать с любой базой данных — ценный и востребованный навык администраторов и разработчиков. Освоить его можно с помощью онлайн-курса «Базы данных» от OTUS.
📌 Хардкорный тест по Базам данных — https://otus.pw/U84X/
⚠️ За полгода живых вебинаров вы научитесь работать с основными СУБД, которые могут вам пригодиться: PostgreSQL, MySQL, Redis, MongoDB, Cassandra и сможете оптимизировать медленные запросы.
РЕЗУЛЬТАТ ОБУЧЕНИЯ
Собственный SQL-проект, который усилит ваше портфолио и поможет получить выгодный оффер.
👉 ПРОЙДИТЕ ТЕСТ — сможете занять место в группе по спец.цене
https://otus.pw/U84X/
Нативная интеграция. Информация о продукте www.otus.ru3 725
Трюк дня. Найти второе место по зарплате. Решение.
Решение 1: использование
IFNULL и OFFSET
• IFNULL(expression, alt): эта функция возвращает аргумент expression в случае, если он не равен null. В противном случае возвращается аргумент alt. Мы используем эту функцию чтобы возвратить null, если в таблице не окажется искомого значения.
• OFFSET: этот оператор используется с ORDER BY для того чтобы отбросить первые n строк. Используется для получения второго по величине значения.
SELECT
IFNULL(
(SELECT DISTINCT salary
FROM employee
ORDER BY salary DESC
LIMIT 1
OFFSET 1
), null) AS sec_salary
FROM employee
LIMIT 1
Решение 2: использование MAX
Здесь выбирается самое большое значение зарплаты, не равное максимальной зарплате, полученной по всей таблице. В результате мы и получаем то, что нужно — вторую по величине зарплату.
SELECT
MAX(salary) AS sec_salary
FROM Employee
WHERE salary != (SELECT MAX(salary) FROM employee)
#tips3 725
Трюк дня. Найти второе место по зарплате
Напишите SQL-запрос для получения из таблицы (
employee) с зарплатами записи, содержащие вторую по размеру заработную плату.
Например, для таблицы на картинке выше такой запрос должен вернуть 200. Если в таблице нет значения, меньшего, чем самая высокая зарплата — запрос должен вернуть null.
Решение будет вечером.
#tips3 725
⚡️ В апреле этого года прошла Конференция TEAMLY: управление знаниями и эффективная совместная работа. Это было уникальное по формату мероприятие: организаторам удалось сконцентрировать прикладной опыт экспертов из ведущих Российский компаний, который можно использовать в своем бизнесе. Среди спикеров представители компаний: ВкусВилл, Skillbox, OZON, «Газпром нефть», «ОАК», СКОЛКОВО и QSOFT.
🔥 Советую зайти к ним на YouTube и посмотреть выступления крутейших специалистов.
Конференцию организовали TEAMLY — платформа для совместной работы и управления знаниями. Это специализированное ПО для создания и сохранения экспертизы компании, налаживания эффективной работы команд и управления знаниями сотрудников.
⚙️ Разработчики платформы на конференции представили большое весеннее обновление платформы. Теперь совместная работа в ТИМЛИ стала еще эффективнее: появился модуль аналитики, обновленный движок поиска, облегченный функционал таск-трекера — постановка задач в редакторе, многоуровневый документооборот, а также возможность фиксировать сообщения из телеграма в базе знаний!
На этом хорошие новости не заканчиваются! 🙌🏻 Команда TEAMLY представила не только облачную версию платформы по приятной стоимости, но еще и бесплатную версию для команды до 7 человек: теперь любая компания сможет выбрать подходящий тариф.
❓Зачем нужно управлять знаниями?
События последних лет показали, что сотрудники с их экспертными знаниями — ценный капитал компании. Культура управления знаниями помогает эффективнее работать всем: рядовые сотрудники повышают квалификацию, компания приобретает большую операционную стабильность и может внедрять инновации. С управлением знаниями компании проще оставаться на плаву и быть конкурентоспособной в условиях кризиса.
🤩 Познакомиться поближе с функционалом и обновлениями TEAMLY — можно здесь https://teamly.ru/spring_2023?utm_source=vk&utm_campaign=sqlbaza
3 725
Ответ на вопрос с собеседования
ABS (TIMESTAMPDIFF (MONTH, date1, date2));
TIMESTAMPDIFF возвращает разницу date2 - date1 в полных месяцах. Поэтому, например,
(MONTH, '2022-01-05 00:00:00',
'2022-05-07 00:00:00') = 4,
а
(MONTH, '2022-01-05 00:00:00',
'2022-05-04 00:00:00') = 3.
Функция ABS возвращает модуль числа, то есть преобразует число из отрицательного в положительное. Охватывает те случаи, когда date1 > date2.
#вопросы #собеседование3 725
Вопрос с собеседования
Напишите запрос для получения количества полных месяцев (результат должен быть INTEGER) между двумя TIMESTAMPS: date1 и date2.
#вопросы #собеседование
3 725
❓Хотите разобраться в основах статистики?
Приходите на вебинар "Основы статистики. Генеральная совокупность и выборка", который приурочен к старту онлайн-курса "Продуктовая аналитика" от OTUS. После пробного урока вы сможете приобрести онлайн-курс в рассрочку.
⚡️На занятии поговорим об основных понятиях статистики, границах ее применимости.
Урок подойдёт:
-тем, кто хочет лучше понимать как статистика может обманывать и какие выводы можно сделать
-специалистам, которые взаимодействуют с аналитиками и хотят лучше понимать о чем они говорят.
🔥В результате урока Вы узнаете основные статистические показатели распределения и как их можно интерпретировать.
👉Готовьте свои вопросы и регистрируйтесь на занятие: https://otus.pw/5jUf/
Нативная интеграция. Информация о продукте www.otus.ru
3 725
Получите 4 курса за 0 рублей и попробуйте себя в роли аналитика!
Только сегодня у вас есть возможность погрузиться в особенности специализации и начать решать реальные задачи на живом практикуме.
Перейдя по ссылке, вы получите:
Вводный курс: всё, что вам нужно знать на старте про профессию Аналитика и другие ключевые профессии в IT
Мастер-класс по аналитике: узнаете, как быстро войти в профессию, и решите реальные задачи
Эксклюзивные лекции по основам программирования – знания, которые необходимы для любой IT-профессии
Ну что готовы начать? Жмите на ссылку 👉 ЗДЕСЬ
Реклама
ООО "ГикБреинс"
erid: LjN8KYsBj
3 725
Трюк дня. Удаление лишних пробелов в строке с использованием REGEX.
Предположим, есть строка, содержащая такой текст:
This is a test string
Требуется удалить из строки лишние пробелы.
Решение:
Используйте функцию REGEXP_REPLACE:
SELECT
REGEXP_REPLACE('This is a test string','( ){2,}',' ');
#tips3 725
Хотите усовершенствовать навыки работы с аналитическими СУБД? 🚀
11 мая 20:00 пройдет открытый урок «Визуализация данных на основе Clickhouse и Apache Superset». Вебинар приурочен к старту онлайн-курса «Data Warehouse Analyst» в OTUS.
Для участия пройдите вступительный тест 👉 https://otus.pw/vgzg6/
Вы узнаете:
✅ Как подготовить БД Clickhouse для загрузки данных и их эффективного использования
✅ Основные принципы работы популярного BI-инструмента Apache Superset
✅ Как связать все воедино, начиная от хранилища и метода загрузки данных, заканчивая графиками
В результате урока вы получите понимание об одном из способов построения хранилища, направленного на визуализацию информации,
познакомитесь с современными инструментами формирования отчетности, примените полученные знания на практике.
👨🎓 Занятие проведет Алексей Железной, Data Engineer в Wildberries и преподаватель OTUS. Продолжить обучение вы сможете на курсе, его можно оплатить разными способами.
Для участия пройдите вступительный тест 👉 https://otus.pw/vgzg6/
3 725
Полезные функции и операторы SQL
В этом видео автор рассматривает функции и операторы SQL, которые наиболее полезны в виду их разнообразного применения.
00:00 Вступление
00:24 Работа с полями таблиц в SQL
00:57 Создать таблицу для работы
01:09 Добавить поле в таблицу
01:34 Узнать тип поля
01:48 Переместить поле
02:22 Изменить тип поля
03:19 Переименовать поле
03:37 Удалить поле
03:58 Форматирование записей
05:55 Временные таблицы в SQL
Смотреть это видео на youtube: youtu.be/SglQ7CCkkTw
3 725
VK Databases Meetup — мероприятие про тренды, технологии и лучшие практики в мире баз данных
⏰ Когда: 18 мая, 15:00 по Москве
📍 Где: офис VK и онлайн-трансляция
⚡️ Регистрация
Центральным событием митапа станет дискуссия «В поисках новых героев: что происходит с СУБД в России?». Эксперты из Tarantool, Arenadata, Jatoba, Yenisey и VK Cloud обсудят тенденции развития баз данных и поговорят о том, как сфера СУБД будет меняться в обозримом будущем:
• какие локальные и глобальные факторы влияют на функциональность СУБД;
• как меняются запросы пользователей;
• какие сложности сегодня есть в планировании архитектуры и миграции;
• зачем разработчикам новые СУБД.
Также в программе архитектурный и технологический треки.
В рамках архитектурного трека вместе с экспертами X5 Digital и VK обсудим трудности, с которыми сталкиваются команды при разработке высоконагруженных систем.
На технологическом треке представитель Arenadata расскажет о процессе миграции СУБД на примере Oracle, «Инфосистемы Джет» рассмотрят популярные уязвимости Open-Source-баз данных, а VK Cloud поговорят о подходах к построению резервного копирования баз данных.
👉 Зарегистрироваться
3 725
Трюк дня. Найти записи с граничными значениями без соединения таблицы на саму себя
Один из вариантов - это сначала найти максимальное значение для каждого ID с помощью GROUP BY, и затем соединить таблицу с самой собой по ID и max значению.
Но есть способ лучше:
SELECT
dat2.*
FROM
(
SELECT
dat.*,
CASE WHEN (num = MAX(num) OVER (PARTITION BY id)) THEN 'y' ELSE 'n' END AS max_num
FROM current_table dat
) dat2
WHERE max_num = 'y'
#tips3 725
Хотите освоить SQL и научиться решать реальные продуктовые задачи?
karpovꓸcourses сделали бесплатный Симулятор, где SQL изучают с нуля до продвинутого уровня на практике. Сейчас на курсе более 120 задач: от базовых до оконных функций.
Это не просто курс, где вы изучите синтаксис языка и основные виды запросов. Здесь вы попробуете себя в роли настоящего аналитика сервиса доставки, поработаете в реальном рабочем окружении и научитесь решать нетривиальные задачи.
Вы разберётесь как:
▫️переводить запросы с языка бизнеса на язык аналитики
▫️формулировать и проверять гипотезы
▫️рассчитывать продуктовые метрики
▫️визуализировать результаты анализа
▫️строить интерактивные дашборды
Обучение проходит на платформе школы
[Начать учиться SQL]
Available now! Telegram Research 2025 — the year's key insights 
