SQL Pro
5.28K subscribers
145 photos
10 files
124 links
SQL Pro - всё об SQL
Реклама: @anothertechrock

Контент канала:
1. Разбор вопросов с собеседований
2. Трюки SQL
3. Видео
4. Тесты
5. Задачи на логику
6. Юмор
加入频道
Ответ на #вопрос28

SELECT colname 
FROM table1
INTERSECT
SELECT colname
FROM table2;

#вопросы #собеседование
Задача на мышление и логику.

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

#логика
👍2
Трюк дня. Выборка записей из таблицы при различных условиях

Из MySQL таблицы customers выберите только тех, которые:

имеют тип = ‘Sal’ или ‘Adv’ И разница между датами mod и trans >=365 дней;
имеют тип = ‘Cus’ И разница между датами mod и trans >=14 дней.

Исходная таблица:
type mod trans
Cus 2022-01-01 2022-12-01
Sal 2022-08-01 2021-05-01
Adv 2022-05-01 2022-04-01
Cus 2022-05-01 2022-04-01

Ожидаемые результат:
type mod trans
Sal 2022-08-01 2021-05-01
Cus 2022-05-01 2022-04-01

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

#tips
👍1
Трюк дня. Выборка записей из таблицы при различных условиях. Решение

SELECT
DAT.*
FROM customer DAT
WHERE DATEDIFF(mod,trans)>=
CASE WHEN type IN('Sal', 'Adv') THEN 365
WHEN type IN('Cus') THEN 14
ELSE NULL END;

#tips
🔥1
#вопрос29

Из каких подмножеств состоит SQL?

#вопросы #собеседование
Ответ на #вопрос29

DDL (Data Definition Language, язык описания данных) — позволяет выполнять различные операции с базой данных, такие как CREATE (создание), ALTER (изменение) и DROP (удаление объектов).

DML (Data Manipulation Language, язык управления данными) — позволяет получать доступ к данным и манипулировать ими, например, вставлять, обновлять, удалять и извлекать данные из базы данных.

DCL (Data Control Language, язык контролирования данных) — позволяет контролировать доступ к базе данных. Пример — GRANT (предоставить права), REVOKE (отозвать права).

#вопросы #собеседование
👍91👎1
Трюк дня. Изменить тип поля с CHARACTER на NUMERIC в PostgreSQL

В PostgreSQL таблице customers колонка age имеет тип CHARACTER(20).

Напишите запрос, который приведёт данную колонку к типу NUMERIC (10,0).

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

#tips
👍4
Трюк дня. Изменить тип поля с CHARACTER на NUMERIC в PostgreSQL. Решение

ALTER TABLE customers
ALTER COLUMN age
TYPE NUMERIC (10,0)
USING age::NUMERIC;


ИЛИ

ALTER TABLE customers
ALTER COLUMN age
TYPE NUMERIC (10,0)
USING CAST(age AS NUMERIC);


#tips
👍14
С помощью какого PostgreSQL запроса можно выбрать значение ‘Beer‘ из JSON поля info:
{“customer”:”John”,”items”:{“product”:”Beer”,”qty”:6}}?
Anonymous Quiz
10%
SELECT info -> ‘product’;
20%
SELECT info -> ‘customer’ -> ‘items’ ->> ‘product’;
33%
SELECT info -> ‘items’ ->> ‘product’;
17%
Ничего из перечисленного
19%
Посмотреть ответы
👍3
#вопрос30

В таблице tbl в поле nmbr содержатся записи со следующими значениями:
1, 0, 0, 1, 1, 1, 1, 0, 0.

Напишите запрос, который добавит 2, если значение nmbr = 0 и добавит 3, если значение nmbr = 1.

#вопросы #собеседование
👍8🏆3
Ответ на #вопрос30

UPDATE tbl
SET nmbr =
CASE WHEN nmbr = 0
THEN nmbr + 2
ELSE nmbr + 3
END;


#вопросы #собеседование
👍23👎5
👍15🤔2
Трюк дня. Возвратить 0 для функции SUM если не найдено ни одного значения в MySQL

Перепишите запрос так, чтобы он возвратил 0, если для функции SUM не найдено ни одного значения, кроме NULLs.

И возвратил сумму, если значения найдены.

SELECT SUM (column_1)
FROM table
WHERE column_2 = ‘Test‘;


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

#tips
👍8
Трюк дня. Возвратить 0 для функции SUM если не найдено ни одного значения в MySQL. Решение

SELECT COALESCE(SUM(column_1),0)
FROM table
WHERE column_2 = ‘Test‘;


#tips
👍13🤯4👎2
С помощью какой конструкции можно проанализировать использование индекса?
Anonymous Quiz
24%
INDEX USAGE
29%
EXPLAIN
19%
SHOW INDEXES
11%
TEST INDEX
16%
Узнать ответ
👍4😁4
#вопрос31

Что такое оконная функция? И в чем отличие от функции агрегации с группировкой?

#вопросы #собеседование
Ответ на #вопрос31

Оконная функция в SQL - функция, которая работает с выделенным набором строк (окном, партицией) и выполняет вычисление для этого набора строк в отдельном столбце.

При использовании агрегирующих функций предложение GROUP BY сокращает количество строк в запросе с помощью их группировки.

При использовании оконных функций количество строк в запросе не уменьшается по сравнению с исходной таблицей.

#вопросы #собеседование
👍20👏4
Статья дня. Основы мониторинга PostgreSQL

#sql

Читать статью
👍1
Трюк дня. Подсчет уникальных id с учетом NULLs в PostgreSQL

Есть таблица t1 со следующими данными:
id
1
2
NULL
NULL
3

Напишите PostgreSQL запрос, который подсчитает количество уникальных id.
При этом записи с NULL должны считаться как одна запись. Ожидаемый ответ: 4.

А также количество уникальных id без учета NULLs. Ожидаемый ответ: 3.

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

#tips
👍1