Какой результат вернёт данный запрос(PostgreSQL)?
SELECT (20/25)*25.0;
SELECT (20/25)*25.0;
Anonymous Quiz
15%
25.0
4%
25
5%
125
18%
0
28%
Запрос не выполнится
30%
Узнать ответ
👍12
Каким образом можно получить список клиентов, которые сделали хотя бы один заказ в каждом месяце в течение последних трех месяцев?
Для получения списка клиентов, которые сделали хотя бы один заказ в каждом месяце в течение последних трех месяцев, можно использовать подзапросы и агрегатные функции.
Надежный подход к решению этой задачи включает подзапрос, который связывается с основной таблицей по идентификатору клиента (customer_id). В подзапросе используется агрегатная функция COUNT() для подсчета количества уникальных месяцев, в которых клиент сделал заказ, и группировка по месяцу (MONTH()). Затем условие HAVING применяется к подзапросу для определения, что клиент сделал заказ во всех трех месяцах.
Для получения списка клиентов, которые сделали хотя бы один заказ в каждом месяце в течение последних трех месяцев, можно использовать подзапросы и агрегатные функции.
Надежный подход к решению этой задачи включает подзапрос, который связывается с основной таблицей по идентификатору клиента (customer_id). В подзапросе используется агрегатная функция COUNT() для подсчета количества уникальных месяцев, в которых клиент сделал заказ, и группировка по месяцу (MONTH()). Затем условие HAVING применяется к подзапросу для определения, что клиент сделал заказ во всех трех месяцах.
👍13🔥3
#Вопросы_с_собеседования
❓При выборке из таблицы workers выведите дату в формате '31.12.2025'
Ответ на картинке.
❓При выборке из таблицы workers выведите дату в формате '31.12.2025'
Ответ на картинке.
👍11
Что покажет следующий запрос:
select DISTINCT seller_id order by seller_id from Orders;
select DISTINCT seller_id order by seller_id from Orders;
Anonymous Quiz
26%
Уникальные ID продавцов, отсортированные по возрастанию
7%
Уникальные ID продавцов, отсортированные по убыванию
59%
Ничего: запрос составлен неверно, ORDER BY всегда ставится в конце запроса
5%
Никак не отсортированные ID продавцов
3%
Посмотреть ответ
👍15
Как быстро заполнить таблицу 1 000 000 ТЕСТОВЫХ записей?
Создадим таблицу samples с точно такой же структурой, что и таблица tests. Заполним ее 10 тестовыми записями.
Для того, чтобы превратить 10 записей из таблицы samples в 1 000 000 записей произведем самообъединение таблицы samples шесть раз
10 x 10 x 10 x 10 x 10 x 10 = 1 000 000 записей
Если в таблице samples будет 100 записей, для получения 1 000 000 записей будет достаточно соединений трех таких таблиц, если в samples будет 1000 записей, будет достаточно объединить таблицу саму с собой один раз.
Вставить результат в целевую таблицу tests можно при помощи оператора
Создадим таблицу samples с точно такой же структурой, что и таблица tests. Заполним ее 10 тестовыми записями.
CREATE TABLE samples (
noscript varchar(256) NOT NULL
);
INSERT INTO
samples (noscript)
VALUES
('8iRDgsEIq4GmOs32FnHM3b3cH60n3mm8070'),
('UAmsXyrKgApfHMyV2kUrYqLphN99Q7TJSoe'),
('OX1qiFeTigcOTO5JVvgFk7MRDgjgatkTqwL'),
('CT9Kfbplp4QC87G32UIKlkGd31jdjt4qH4f'),
('WsAhjBL5tAgihYZBtX97FNUmEpXavhb4CRw'),
('LwaitJ5dieXyixEmjJXhhqDY8Zg9Tu5ecoV'),
('KpHsnqrcMCpkRxkGNMjEJV0jFaeucPtbLWe'),
('t2GSIDOvW14eMlroAWrRR6xU5DoeNUXY0lD'),
('rSvrEPxR8rcw7QYjXfeNdyf3LpqYNHu3W7a'),
('6liUHPkjnygSatoUB4juZ5TaJZjaxHpR4BL');Для того, чтобы превратить 10 записей из таблицы samples в 1 000 000 записей произведем самообъединение таблицы samples шесть раз
SELECT
fst.noscript
FROM
samples AS fst,
samples AS snd,
samples AS thd,
samples AS fth,
samples AS fif,
samples AS sth;
Оператор JOIN, который в SQL может быть заменен обычной запятой, осуществляет декартово соединение таблиц, когда каждой записи одной таблицы сопоставляется каждая запись другой таблицы. Таким образом, если в одной таблице 10 записей и в другой таблице 10 записей, результирующая таблица, полученная их соединением через JOIN будет содержать 100 записей. Как нетрудно увидеть10 x 10 x 10 x 10 x 10 x 10 = 1 000 000 записей
Если в таблице samples будет 100 записей, для получения 1 000 000 записей будет достаточно соединений трех таких таблиц, если в samples будет 1000 записей, будет достаточно объединить таблицу саму с собой один раз.
Вставить результат в целевую таблицу tests можно при помощи оператора
INSERT ... SELECT ...
INSERT INTO
tests
SELECT
fst.noscript
FROM
samples AS fst,
samples AS snd,
samples AS thd,
samples AS fth,
samples AS fif,
samples AS sth;👍13❤3
Какой результат возвратит код для таблицы с картинки выше:
SELECT COUNT (city) FROM table;
SELECT COUNT (city) FROM table;
Anonymous Quiz
2%
1
1%
2
52%
3
31%
4
9%
Ничего из перечисленного
4%
Посмотреть ответы
👍15🔥3😱2
В уроках представлены только реальные вопросы на собеседовании по sql. Все задачи взяты из настоящих собеседований по sql.
Смотреть видео
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
SQL собеседование (вопросы) | IT собеседование (Часть 1)
В уроках представлены только реальные вопросы на собеседовании по sql. Все задачи взяты из настоящих собеседований по sql.
Освоив эти типовые задачи, у вас не возникнет каких-либо трудностей при прохождении IT собеседования.
Обработка и замена NULL значений…
Освоив эти типовые задачи, у вас не возникнет каких-либо трудностей при прохождении IT собеседования.
Обработка и замена NULL значений…
👍8
🔐 КАК ИЗМЕНИТЬ ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ MYSQL
Одной из важных операций при работе с пользователями в СУБД MySQL является смена пароля пользователя. Как правило изменить пароль пользователя может только суперпользователь с именем root. Однако если обычный пользователь наделен полномочиями на смену пароля то он также может это сделать.
В данной статье будет рассмотрено как изменить пароль пользователя MySQL в операционной системе Ubuntu 20.04.
Содержание статьи:
Как сменить пароль пользователя MySQL
Шаг 1. Как узнать версию MySQL
Шаг 2. Вход в консоль MySQL
Шаг 3. Просмотр хостов пользователя
Шаг 4. Смена пароля пользователя при помощи SET PASSWORD
Шаг 5. Смена пароля пользователя при помощи ALTER USER
Шаг 6. Сброс кэша привилегий
Шаг 7. Проверка нового пароля
Выводы
Смотреть статью
Одной из важных операций при работе с пользователями в СУБД MySQL является смена пароля пользователя. Как правило изменить пароль пользователя может только суперпользователь с именем root. Однако если обычный пользователь наделен полномочиями на смену пароля то он также может это сделать.
В данной статье будет рассмотрено как изменить пароль пользователя MySQL в операционной системе Ubuntu 20.04.
Содержание статьи:
Как сменить пароль пользователя MySQL
Шаг 1. Как узнать версию MySQL
Шаг 2. Вход в консоль MySQL
Шаг 3. Просмотр хостов пользователя
Шаг 4. Смена пароля пользователя при помощи SET PASSWORD
Шаг 5. Смена пароля пользователя при помощи ALTER USER
Шаг 6. Сброс кэша привилегий
Шаг 7. Проверка нового пароля
Выводы
Смотреть статью
👍3
#Вопросы_с_собеседования
❓Для чего используются агрегатные функции?
Агрегатные функции используются для выполнения вычислений на одном или нескольких значениях и возвращают одиночное значение с осмысленной информацией.
Несколько примеров агрегатных функций:
❓Для чего используются агрегатные функции?
Агрегатные функции используются для выполнения вычислений на одном или нескольких значениях и возвращают одиночное значение с осмысленной информацией.
Несколько примеров агрегатных функций:
COUNT(), SUM(), MAX(), MIN(), AVG() и ROUND().👍14❤1
Есть библиотека с книгами. Оперируя сущностями «Книга» и «Автор», вы хотите сохранить реестр своей библиотеки в БД. Сколько таблиц понадобится для эффективного хранения такой структуры в 3-й нормальной форме?
Anonymous Quiz
9%
1
29%
2
43%
3
5%
4
14%
Посмотреть ответ
👍11❤1
С помощью какого запроса можно получить текущую структуру таблицы table?
Anonymous Quiz
32%
SELECT * FROM table
33%
SHOW TABLE STRUCTURE table
30%
DESCRIBE table
4%
SELECT table
👍18
Создание поля, объединяющего имя и зарплату в выборке из таблицы пользователей
Для создания поля, которое будет включать в себя и имена, и зарплату, можно использовать функцию CONCAT(). Она объединяет две или более строковые величины в одну строку.
Пример SQL-запроса для создания поля new_field на фото.
В примере мы выбираем таблицу users и создаем новое поле с помощью функции CONCAT(). Внутри функции указываем два поля, которые хотим объединить - name и salary. Также задаем новое имя для созданного поля - new_field, используя AS.
Теперь в результате выполнения запроса в выборке будет присутствовать новое поле new_field, которое будет содержать имя пользователя и его зарплату.
Для создания поля, которое будет включать в себя и имена, и зарплату, можно использовать функцию CONCAT(). Она объединяет две или более строковые величины в одну строку.
Пример SQL-запроса для создания поля new_field на фото.
В примере мы выбираем таблицу users и создаем новое поле с помощью функции CONCAT(). Внутри функции указываем два поля, которые хотим объединить - name и salary. Также задаем новое имя для созданного поля - new_field, используя AS.
Теперь в результате выполнения запроса в выборке будет присутствовать новое поле new_field, которое будет содержать имя пользователя и его зарплату.
👍14
Аналитика небольших данных: как совместить Excel, Python и SQL с помощью инструментов с открытым исходным кодом
Смотреть статью
Смотреть статью
👍12
Какой у вас опыт разработки/обучения на SQL?
Anonymous Poll
47%
Учусь 0-1 года
14%
Учусь 1+ года
6%
Работаю 0-1 года
15%
Работаю 1-3 года
13%
Работаю 3+ года
4%
Другой ответ
👍11