SQL и БД Learning
9.74K subscribers
808 photos
9 videos
22 files
448 links
№ 5060218708

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

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

Реклама на бирже - https://telega.in/c/SQl_and_DB_Learning
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Выполнение побитовых операций над числами из Oracle Database 21c с помощью:

BIT_AND_AGG
BIT_XOR_AGG
BIT_OR_AGG



Преобразование десятичных чисел в двоичные (5 = 101, 6 = 110 и т. д.).
Сравнение значений в каждой битовой позиции
Преобразование результатов обратно в десятичный вид
👍2
Порядок выполнения команд в SQL
👍14🔥2
Создание поля, объединяющего имя и зарплату в выборке из таблицы пользователей

Для создания поля, которое будет включать в себя и имена, и зарплату, можно использовать функцию CONCAT(). Она объединяет две или более строковые величины в одну строку.

Пример SQL-запроса для создания поля new_field на фото.

В примере мы выбираем таблицу users и создаем новое поле с помощью функции CONCAT(). Внутри функции указываем два поля, которые хотим объединить - name и salary. Также задаем новое имя для созданного поля - new_field, используя AS.

Теперь в результате выполнения запроса в выборке будет присутствовать новое поле new_field, которое будет содержать имя пользователя и его зарплату.
👍7
Индекс GIN

Индекс GIN - это тип индекса в PostgreSQL, который позволяет эффективно искать данные в полнотекстовых полях, массивах, JSON и других типах данных. Он создается на столбцах с комплексными или составными типами данных, такими как полнотекстовые данные или JSON. Индекс разбивает значения в столбце на отдельные элементы и создает отображение между этими элементами и строками в таблице, что позволяет быстро искать значения в этих типах данных.

Преимущества использования индекса GIN:
- Быстрый поиск по полнотекстовым данным и другим составным типам данных
- Поддержка операций поиска, включая поиск по подстроке и полнотекстовый поиск
- Поддержка операций над массивами, такие как поиск элементов массива и проверка наличия значения в массиве
- Возможность использования в комбинации с другими индексами для дополнительной оптимизации запросов

Создание индекса осуществляется с указанием типа индекса как GIN и имени столбца, на котором создается индекс.
Пример: CREATE INDEX idx_gin ON mytable USING GIN (mycolumn);

Использование индекса GIN в запросах выполняется с помощью оператора @@ или функции tsquery.
👍7🔥1
REPLICATE в SQL Server

REPLICATE
- это функция в SQL Server, которая повторяет входную строку указанное количество раз. Эта функция может быть полезна во многих сценариях, например, при создании тестовых данных или при форматировании вывода.

Синтаксис функции REPLICATE выглядит следующим образом:
REPLICATE ( string_expression , integer_expression )

- string_expression - это строковое выражение, которое нужно повторить.
- integer_expression - это выражение целого типа, определяющее количество раз, которое нужно повторить строку.
👍4
Все о jsonb_to_recordset в SQL

Функция jsonb_to_recordset в SQL используется для преобразования данных, хранящихся в формате JSON, в таблицы. Она позволяет распаковывать массивы и объекты JSON и превращать их в строки и столбцы в таблице.

Кроме того, jsonb_to_recordset позволяет работать с вложенными объектами и массивами. Для этого нужно использовать функцию jsonb_each, которая распаковывает объекты и массивы JSON в отдельные строки.
👍8
Поиск значений в таблице, которые не совпадают с другой таблицей

Для выполнения поиска значений в таблице, которые не совпадают с другой таблицей в SQL, можно использовать операторы JOIN, NOT IN и NOT EXISTS.

1. JOIN - используется для объединения двух таблиц по заданному условию. Для поиска значений, которые не совпадают, можно использовать LEFT JOIN или RIGHT JOIN, а затем выбрать строки с NULL значениями в столбцах таблицы-присоединения.

2. NOT IN - спользуется для выбора значений из одной таблицы, которые не содержатся в другой таблице.

3. NOT EXISTS - используется для проверки наличия значений в подзапросе и выбора строк, которые не имеют соответствия в другой таблице.
👍7
💻Knex.js — конструктор SQL-запросов для PostgreSQL и других СУБД

npm install knex --save
npm install pg --save

Knex.js спроектирован как гибкий и портативный инструмент.

В нем есть как традиционные колбеки, так и интерфейс промисов для более чистого управления потоком async, потоковый интерфейс, полнофункциональные конструкторы запросов и схем, поддержка транзакций (с точками сохранения), пул соединений и стандартизированные ответы между различными клиентами.

Knex можно использовать в качестве конструктора SQL-запросов как в Node.JS, так и в браузере, ограничиваясь возможностями WebSQL (например, невозможностью дропать таблицы или читать схемы). Составлять SQL-запросы в браузере для выполнения на сервере крайне не рекомендуется, так как это может стать причиной серьезных уязвимостей в безопасности.

🟡 Доки
🖥 GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Google почти всегда задает вопросы по SQL во время собеседований на вакансии Data Analytics, Data Science и Data Engineering.

Поэтому, если вы готовитесь к собеседованию по SQL, решите эти 11 РЕАЛЬНЫХ вопросов для собеседования Google по SQL.

https://datalemur.com/blog/google-sql-interview-questions
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1