SQL и БД Learning
10.6K subscribers
762 photos
9 videos
22 files
425 links
№ 5060218708

Изучаем SQL с нуля

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/SQl_and_DB_Learning
Download Telegram
Функция CONCAT_WS()

Функция CONCAT_WS() добавляет два или более выражений вместе с разделителем.

Синтаксис:
CONCAT_WS(separator, expression1, expression2, expression3,...).
👍5
Что вы знаете о функции STUFF(Transact-SQL)?

Функция STUFF вставляет одну строку в другую, начиная с указанной позиции. При этом в исходной строке, начиная с указанной позиции, удаляются символы в количестве, определенном в параметре Length.

Другими словами STUFF вставляет одну строку в другую. Она удаляет указанное количество символов первой строки в начальной позиции и вставляет на их место вторую строку.

Синтаксис:

STUFF(String1, Position, Length, String2)

Здесь String1 — это строка, которая будет перезаписана. Position определяет стартовую позицию для перезаписи строки. Length — это длина подстроки, которая будет удалена из исходной строки. String2 — это строка, которая будет вставлена в String1.

Пример:

SELECT STUFF(‘SQL Tutorial’,1,3,’Python’)
В результате работы функции «SQL Tutorial» превратится в «Python Tutorial».


Результат:

Python Tutorial
👍8
Как создать временную таблицу в sql запросе

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

CREATE TEMPORARY TABLE название_таблицы

Удобно создавать временную таблицу на выборке из другой таблицы:

CREATE TEMPORARY TABLE customer_temp SELECT * FROM customer;
👍6
#вопросы_с_собеседований

Что не так с запросом на фото? Исправьте его, если нужно.

В тексте обнаружено неверное выражение BillingYear в условии WHERE. Несмотря на то, что оно было определено как алиас в выборке SELECT перед WHERE, логический порядок обработки условий отличается. Как известно, в T-SQL операторы выполняются в другом порядке, что может привести к неожиданным результатам. Чтобы избежать подобных ошибок, программисты должны учитывать эту особенность при написании кода.

Правильный запрос будет выглядеть так:

SELECT Id, YEAR(BillingDate) AS BillingYear
FROM Invoices
WHERE YEAR(BillingDate) >= 2010;
👍7
В некоторой таблице есть колонка EX_COL. Записи таблицы для этой колонки содержат значения { 100, 200, 300, NULL }. Каким будет результат функции AVG(EX_COL)?
Anonymous Quiz
14%
150
32%
Возникнет ошибка: агрегатные функции не могут быть использованы для записей со значениями NULL
2%
0
41%
200
12%
Узнать ответ
👍7
#Вопросы_с_собеседования

Проверьте, существует ли значение в массиве Postgres

Ответ на картинке.
👍5
#Вопросы_с_собеседования

Даны две таблицы: таблица category с полями id и name и таблица page с полями id, name и category_id. Достаньте одним запросом все страницы вместе с их категориями

Ответ на картинке.
👍8
👍12
Какой SQL оператор отвечает за удаление всей таблицы?
Anonymous Quiz
17%
TRUNCATE
3%
ALTERDROP
68%
DROP
12%
DELETE
👍11
#Вопросы_с_собеседования

Очистите все таблицы базы данных test1

Ответ на картинке.
👍7
#Вопросы_с_собеседования

Что такое сущности и отношения?

Объект представляет собой абстракцию набора связанных данных и представлен в виде таблиц . Отношения определяют, как объекты связаны друг с другом.
Например, предположим, что у нас есть две таблицы с именами orders и users. Наши orders и users являются нашими сущностями.

Мы можем представить, что у одного пользователя может быть много заказов. Таким образом, пользователи могут иметь отношения «один ко многим» с заказами. Сущности и отношения часто используются в процессе разработки схемы таблицы. Понимая, как определять объекты и отображать их отношения, вы показываете, что можете продуктивно работать в коллективном сеансе проектирования таблиц базы данных.
👍11
#Вопросы_с_собеседования

Напишите SQL-запрос, который найдет суммарное количество заказов и общую сумму продаж для каждого месяца за последние 6 месяцев, и отобразит результаты только для тех месяцев, в которых было совершено более 100 заказов?

В этом примере мы используем функцию DATE_TRUNC для округления даты до месяца. Затем мы считаем общее количество заказов с помощью функции COUNT и общую сумму продаж с помощью функции SUM. Затем мы используем выражение HAVING для фильтрации только тех месяцев, где количество заказов превышает 100. Наконец, мы сортируем результаты по месяцам с помощью выражения ORDER BY.
👍8
#Вопросы_с_собеседования

Для чего используются агрегатные функции?

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

Несколько примеров агрегатных функций: COUNT(), SUM(), MAX(), MIN(), AVG() и ROUND().
👍6
Порядок выполнения команд в SQL
👍24