SQL и Базы Данных – Telegram
SQL и Базы Данных
4.19K subscribers
165 photos
5 videos
183 links
Задачи по базам данных и SQL

Основы языка SQL, задачи и решения к ним.

Админ: @anothertechrock
Download Telegram
Наиболее распространенным является тип объединения:
Anonymous Quiz
55%
INNER JOIN
8%
FULL JOIN
37%
LEFT JOIN
Кто из вас каким либо образом связан с криптовалютами?
Anonymous Poll
6%
Да, торгую, владею
11%
Да владею
11%
Сталкиваюсь
72%
Не связан никак
Группировка и фильтрация в SQL

В этом видеоуроке автор подробно разбирает процесс фильтрации результатов группировки в SQL с помощью ключевого слова HAVING.

00:00 Фильтрация результатов группировки
00:59 Почему не работает фильтрация в WHERE
01:41 Порядок выполнения запроса SQL
02:29 Ключевое слово HAVING
04:00 Итоги

Смотреть это видео на youtube: youtu.be/ytfXUvCsNuo
Фильтрация данных в SQL

В этом ролике автор подробно и наглядно разбирает процесс фильтрации данных в SQL с использованием оператора WHERE.

00:00 Ключевое слово WHERE и фильтры для выбора строк
01:55 Операции, которые можно использовать в WHERE
02:32 Использование BETWEEN в WHERE
03:05 Использование IN в WHERE
03:58 Использование LIKE в WHERE
04:59 Логические операции AND, OR и NOT в WHERE
07:36 Итоги

Смотреть это видео на youtube: youtu.be/Q8UmK7wC9Hk
🛢SQL hub - без баз даных программирование невозможно. Узучи SQL быстро и легко. В канале собраны самые доступые и понятные гайды для освоения SQL.

1 канал вместо тысячи платных курсов и книг.
Что такое NoSQL и нереляционные базы данных

В этом ролике автор дает подробные ответы на следующие вопросы:
• Что такое NoSQL
• Что такое нереляционные базы данных
• Отличие NoSQL от SQL
• Способы организации данных в NoSQL-базах
• Базы данных типа ключ-значение
• Хранение данных в виде колонок
• Хранение данных в виде графов и деревьев
• Хранение данных в виде документов
• Работа с запросами в NoSQL
• Применение NoSQL

Смотреть это видео на youtube: youtu.be/Xu4S2OX8Gb4
🥰2
В SQL инструкция SELECT * FROM R, S эквивалентна_________
Anonymous Quiz
13%
Select * from R natural join S
28%
Select * from R cross join S
23%
Select * from R union join S
37%
Select * from R inner join S
Если мы хотим удалить дубликаты, мы используем в этом агрегатном выражении ключевое слово ______
Anonymous Quiz
90%
Distinct
4%
Count
2%
Avg
4%
Primary key
Трюк дня. Улучшить производительность запроса к таблице с индексом

В таблице test в столбце signup_date содержатся данные типа date. Для этого стоблца существует индекс.

Следующий SQL запрос не будет использовать существующий индекс, что может приводить к потере производительности:

SELECT
*
FROM test
WHERE DATEPART (YEAR, signup_date) = '2021';

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

Решение будет вечером.
👍1
Трюк дня. Улучшить производительность запроса к таблице с индексом. Решение

При использовании функции DATEPART происходит неявное преобразование типа данных. И индекс не будет использован.

Поэтому для лучшей производительности запрос лучше писать следующим образом:

*
FROM test
WHERE signup_date >= '20210101'
AND signup_date < '20220101';
Устраивают ли вас таск-менеджеры, которые вы используете? Хотели бы что-то в них изменить? Не все готовые решения отвечают запросам пользователей, а писать что-то с нуля — муторно и сложно. Ребята из low-code конструктора Ozma рассказали и показали, как создать свой таск-трекер и настроить его под себя.

https://habr.com/ru/post/673874/
👍1
Вопрос с собеседования.

Даны таблицы workers и departments. Найдите все департаменты без единого сотрудника.
Ответ на "Даны таблицы workers и departments. Найдите все департаменты без единого сотрудника."

SELECT department_name
FROM workers w
RIGHT JOIN departments d ON (w.department_id = d.department_id)
WHERE first_name IS NULL;
👍2
Трюк дня. Проверка уникальности имени и фамилии

Напишите SQL запрос, который проверит уникальность комбинации name и surname таблицы customers при отсутствии первичных ключей:

name surname
Alex Kruis
Tim Boils
Tom Andreas
Tim Boils

Вариант решения будет вечером.
👍2
Трюк дня. Проверка уникальности имени и фамилии. Решение

SELECT
COUNT (*),
COUNT (DISTINCT name || surname)
FROM customers;
👍4
Какого строкового типа данных нет в SQL:
Anonymous Quiz
5%
VARCHAR
57%
STRING
11%
CHAR
21%
TEXT
5%
Посмотреть ответ
Вопрос с собеседования.

Перечислите способы получить количество записей в таблице?
Ответ на "Перечислите способы получить количество записей в таблице?"

Для подсчета количества записей в таблице вы можете использовать следующие запросы:

SELECT * FROM table1;

SELECT COUNT(*) FROM table1;

SELECT rows FROM sysindexes WHERE id = OBJECT_ID(table1) AND indid < 2;
👍3👎2