SQL Pro
5.07K subscribers
142 photos
2 videos
10 files
127 links
SQL Pro - всё об SQL
Реклама: @anothertechrock

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

Ссылка на YouTube

#видео
Какое выражение используется для получения различных значений?
Anonymous Quiz
15%
SELECT UNIQUE
51%
SELECT DISTINCT
27%
SELECT DIFFERENT
2%
SELECT MAX
6%
Посмотреть ответы
#вопрос2

Напишите запрос для получения количества полных месяцев (результат должен быть INTEGER) между двумя TIMESTAMPS: date1 и date2.

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

 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.

#вопросы #собеседование
Tips & Tricks. Производительность запросов в SQL Server: ошибка #2. Поиск строк с подстановкой (wildcard)

В серии статей по SQL Server разбираем типичные ошибки, приводящие к снижению производительности, и способы их исправить.

#sql

Читать статью
Трюк дня. Игнорирование одиночной кавычки в SQL Server.

Рассмотрим ситуацию, когда в таблицу требуется вставить текст, содержащий одиночную кавычку, например: It‘s Friday today.

Запрос
INSERT INTO table VALUES (‘It’s Friday today.’) выдаст ошибку.

Решение #1: продублировать одиночную кавычку в тексте:

INSERT INTO table VALUES (‘It’’s Friday today.’)

Решение #2: использовать char(39):

INSERT INTO table VALUES (‘It’ + char (39) + ’s Friday today.’)

А какие еще решения данной задачи вы знаете?

#tips
Какой оператор нужно вставить вместо [?], чтобы создать временную таблицу?
Anonymous Quiz
34%
TEMP
39%
TEMPORARY
1%
ошибка
16%
ничего из перечисленного
Какая функция используется для объединения строк?
Anonymous Quiz
24%
JOIN
6%
COMBINE
5%
UNITE
58%
CONCAT
3%
Ничего из перечисленного
4%
Посмотреть ответы
#вопрос3

Напишите запрос для получения первых 3 символов колонки firstname из таблицы customers.

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

 SUBSTRING (firstname, 1, 3) FROM customers;

Все три параметра функции SUBSTRING (string, start, length) обязательны:

- string - строка, из которой извлекается подстрока.
- start - стартовая позиция. Позиция первого символа в строке = 1.
- length - количество извлекаемых символов. Должно быть положительным числом.

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

Какой будет угол между часовой и минутной стрелкой в 3 часа 15 минут?

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

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

Ответ:
7.5 градусов.

Весь циферблат - это 360 градусов и вcего на циферблате 12 часов, соответственно 1 час составляет = 360/12 = 30 градусов.

15 минут - это 1/4 часа, соответственно часовая стрелка продвигается за 15 минут на = 30/4 = 7.5 градусов.

#логика
Какой оператор MySQL позволит добавить корректные данные в таблицу, игнорируя при этом некорректные?
Anonymous Quiz
25%
INSERT CORRECT
10%
INSERT
31%
INSERT IGNORE
13%
Ничего из перечисленного
20%
Посмотреть ответы
#вопрос4

Что такое Ограничения (Constraints) в SQL?

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

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

Они могут применяться для одного или нескольких полей во время создания таблицы или после создания с помощью команды ALTER TABLE.

К ограничениям относятся:

NOT NULL - запрещает вставку в столбец значения NULL.
CHECK - Проверяет, что все значения в поле удовлетворяют условию.
DEFAULT - Автоматически присваивает значение по умолчанию, если для поля не указано значение.
UNIQUE - Обеспечивает вставку в поле уникальных значений.
INDEX - Индексирует поле, обеспечивая более быстрый поиск записей.
PRIMARY KEY - Уникально идентифицирует каждую запись в таблице.
FOREIGN KEY - Позволяет устанавливать связи между таблицами.

#вопросы #собеседование
👍2