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

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

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

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

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

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

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

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

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

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

#логика
❤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
❤1
Большой тест по SQL для тестировщиков из 44 вопроса - https://qarocks.ru/test_post/big-sql-quiz/

Проходите и пишите, у кого 44 из 44:)

P.S если найдете ошибки в ответах, присылайте - попросим исправить)
SELECT order_id FROM order_table o

JOIN customer c ON o.customer_id = c.customer_id WHERE c.country_code = 'RU'

UNION ALL

SELECT order_id FROM order_detail WHERE product_id IN (SELECT product_id FROM product WHERE category_id = 1);


Схема БД и код для генерации данных находятся в шапке канала

Для начала напишите ваши варианты ответов в комментах, а тест с решением будет скоро. Запрос не выдает число или конкретную категорию. Просто опишите своими словами результат.
❔ Вопрос с собеседования

Как работает SQL-триггер?

Ответ: Когда происходит событие, СУБД автоматически вызывает триггер, который затем выполняет набор операторов SQL, определенных в триггере. Триггеры определяются для каждой таблицы и создаются с помощью оператора CREATE TRIGGER. Они могут запускаться до или после наступления события и выполняться один раз для каждой затронутой строки либо один раз для каждого оператора.

➡️ SQL Pro | #собеседование
❤2