SQL Pro
4.94K subscribers
99 photos
9 files
77 links
SQL Pro - всё об SQL
Реклама: @anothertechrock

Контент канала:
1. Разбор вопросов с собеседований
2. Трюки SQL
3. Видео
4. Тесты
5. Задачи на логику
6. Юмор
Download Telegram
Трюк дня. Извлечение имени, отчества и фамилии из строки с полным именем

В столбце fullname таблицы customers содержится имя, отчество и фамилия в следующем формате: 'name middlename surname'.

Напишите MySQL-запрос, который извлечет name, middlename и surname в отдельные столбцы. Если middlename не существует, то в результате в middlename должен быть NULL.

Например, из 'Alena Igorevna Petrova' должны получиться 3 столбца:
• name = 'Alena',
• middlename = 'Igorevna',
• surname = 'Petrova'.

А из строки 'Jack Powers' получится следующее:
• name = 'Jack',
• middlename = NULL,
• surname = 'Powers'.

Решение будет вечером.

#tips
3💩1
Трюк дня. Извлечение имени, отчества и фамилии из строки с полным именем. Решение.

SELECT
SUBSTRING_INDEX (SUBSTRING_INDEX (fullname, ' ', 1), ' ', -1) AS name,
IF (LENGTH (fullname) - LENGTH (REPLACE (fullname, ' ', '')) > 1,
SUBSTRING_INDEX(SUBSTRING_INDEX (fullname, ' ', 2), ' ', -1), NULL)
AS middlename,
SUBSTRING_INDEX (SUBSTRING_INDEX (fullname, ' ', 3), ' ', -1) AS surname
FROM customers;


#tips
🥴1
Задача на мышление и логику.

Дано 12 монет, из которых 11 – настоящие, и только 1 – фальшивая. Фальшивая монета отличается от настоящих по массе. Какое минимальное количество взвешиваний необходимо, чтобы обнаружить фальшивую монету? Для взвешивания используются чашечные весы.

Решение будет вечером.

#логика
Решение сегодняшней задачи на логику и мышление.

Минимальное количество взвешиваний – 3, ведь даже если мы взвесим 2 раза, то как мы узнаем, какая из монет фальшивая? Большую часть монет составляют настоящие, так что 2 монеты с одинаковым весом и будут настоящими, третья с другим весом – фальшивой.

Ответ: 3 взвешивания.

#логика
Задача на мышление и логику.

Определите, какое число должно стоять на месте знака вопроса.

Решение будет вечером.

#логика
1
🔥 Для начинающих аналитиков и разработчиков.

Освойте главный инструмент для работы с данными. Курс проведет вас от первых SELECT до оконных функций и сложных соединений.

Формат: 15 коротких уроков + PDF-шпаргалка. Доступ навсегда.

💰 Цена: 6 900 ₽.

🆓 Попробуйте бесплатно: на странице курса есть тариф с вводным уроком и конспектом на 2 дня.

👉 Узнать подробнее и записаться: https://high.skillspace.ru/course/125816/about
🔥3👍2😁1🤯1😱1
Решение сегодняшней задачи на логику и мышление.

Вместо знака вопроса должно стоять число 179. Если двигаться по часовой стрелке начиная с 3, то каждое последующее число равно удвоенному предыдущему, к которому прибавили 1, 3, 5, 7, 9.

3 × 2 + 1 = 7.
7 × 2 + 3 = 17.
17 × 2 + 5 = 39.
39 × 2 + 7 = 85.
85 × 2 + 9 = 179.

#логика
👍4🔥2🤝1
Трюк дня. Извлечение имени, отчества и фамилии из строки с полным именем. Решение.

SELECT
SUBSTRING_INDEX (SUBSTRING_INDEX (fullname, ' ', 1), ' ', -1) AS name,
IF (LENGTH (fullname) - LENGTH (REPLACE (fullname, ' ', '')) > 1,
SUBSTRING_INDEX(SUBSTRING_INDEX (fullname, ' ', 2), ' ', -1), NULL)
AS middlename,
SUBSTRING_INDEX (SUBSTRING_INDEX (fullname, ' ', 3), ' ', -1) AS surname
FROM customers;

#tips
👍3🤔1
Трюк дня. Сравнение с предыдущим

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

Решение будет вечером.

#tips
👍2🤡2
Трюк дня. Сравнение с предыдущим. Решение.

Решение: использование DATEDIFF

DATEDIFF
: эта функция вычисляет разницу между двумя датами. Она используется для того, чтобы обеспечить сравнение именно «сегодняшних» и «вчерашних» температур.

Если сформулировать обычным языком следующий запрос, то окажется, что он выражает следующую идею: нужно выбрать такие идентификаторы, чтобы температура, соответствующая представляемым ими датам, была бы больше, чем температура на «вчерашние» по отношению к ним даты.

SELECT DISTINCT a.Id
FROM Weather a, Weather b
WHERE a.Temperature > b.Temperature
AND DATEDIFF(a.Recorddate, b.Recorddate) = 1

#tips
5 обязательных книг по SQL

1⃣ “SQL: быстрое погружение”. Автор - Уолтер Шилдс

Эта книга поожет вам разобраться как в основах SQL, так и в расширенных возможностях этого языка. Читатели, уже имеющие опыт работы с SQL, могут пользоваться книгой Шилдса как справочником.

🔴 Скачать


2⃣ “MySQL Cookbook”. Авторы - Света Смирнова, Алкин Тезуйсал

Книга пригодится всем, кто работает с MySQL как в личных проектах, так и на профессиональном уровне. Как бы опытны вы ни были, возможно, с какими-то задачами, рассмотренными в этой книге, вы просто не сталкивались. При этом книга будет интересна и новичкам.

🔴 Скачать


3⃣ “SQL Cookbook”. Авторы - Энтони Молинаро, Роберт де Грааф

Сборник рецептов с удобной структурой: постановка задачи, решение с кодом и детальное объяснение. Авторы рассматривают особенности конкретных СУБД: Oracle, DB2, SQL Server, MySQL и PostgreSQL.

🔴 Скачать


4⃣ “Изучаем SQL”. Автор - Алан Болье

Книга охватывает большинство тем, необходимых для начинающего разработчика в области баз данных. При этом она не перегружена теорией: все знания применяются на практике в ходе изучения.

🔴 Скачать


5⃣ “SQL для чайников”. Автор - Аллен Тейлор

Эта книга поможет разобраться в проектировании, управлении и защите базы данных. Автор подробно описывает средства защиты данных от кражи, случайного или вредоносного повреждения, а также от потери из-за сбоев оборудования и дает рекомендации по устранению ошибок в работе.

🔴 Скачать
Please open Telegram to view this post
VIEW IN TELEGRAM