Базы данных (Data Base) – Telegram
Базы данных (Data Base)
8.2K subscribers
569 photos
468 videos
19 files
547 links
Базы данных (Data Base). По всем вопросам @evgenycarter
Download Telegram
Шпаргалка SQL → Pandas


#db

👉 @database_info
👍62
Распространенные ошибки SQL в хранимых процедурах и запросах

Я не буду описывать совсем банальные вроде ошибки синтаксиса (talbe вместо table). Рассмотрим досадные ошибки sql server, которые снижают скорость нашей разработки

https://falconspace.ru/list/sqlserver/rasprostranennye-oshibki-sql-v-khranimykh-procedurakh-i-zaprosakh---193

#db

👉 @database_info
👍3
Представления в SQL

Здравствуйте, в этой статье будут разобраны представления или view в SQL. На простых примерах объясним как создавать представления и как к ним обращаться. Также затронем понятие модифицируемого представления в SQL.

https://telegra.ph/Predstavleniya-v-SQL-06-18

#SQL

👉 @database_info
5👍2👎1
Ограничение DEFAULT в SQL

Ограничение DEFAULT используется для установки значений по умолчанию при попытке вставить пустое (NULL) значение в столбец. Например:

CREATE TABLE Colleges (
college_id INT PRIMARY KEY,
college_code VARCHAR(20),
college_country VARCHAR(20) DEFAULT 'Japan'
);


Здесь значением по умолчанию для столбца college_country является Japan.

Если мы попытаемся сохранить значение NULL в столбце college_country, то значением станет Japan. Например:

-- Вставляем значение 'Japan' в столбец college_country
INSERT INTO Colleges (college_id, college_code)
VALUES (1, 'ARP76');

-- Вставляем значение 'UAE' в столбец college_country
INSERT INTO Colleges (college_id, college_code, college_country)
VALUES (2, 'JWS89', 'UAE');


Ограничение DEFAULT с ALTER TABLE
Мы также можем добавить ограничение DEFAULT к существующему столбцу с помощью оператора ALTER TABLE. Например:

SQL Server

ALTER TABLE Colleges
ADD CONSTRAINT country_default
DEFAULT 'Japan' FOR college_country;
PostgreSQL

ALTER TABLE Colleges
ALTER COLUMN college_code SET DEFAULT 'Japan';
MySQL

ALTER TABLE Colleges
ALTER college_country SET DEFAULT 'Japan';
Oracle

ALTER TABLE Colleges
MODIFY college_country DEFAULT 'Japan';


Здесь значением по умолчанию для столбца college_country является Japan, если кто-то попытается вставить NULL.

Удалить ограничение DEFAULT

Мы можем удалить ограничение DEFAULT, используя оператор DROP. Например:

SQL Server, PostgreSQL, Oracle

ALTER TABLE Colleges
ALTER COLUMN college_country DROP DEFAULT;
MySQL

ALTER TABLE Colleges
ALTER college_country DROP DEFAULT;

Здесь мы удаляем ограничение DEFAULT из столбца college_country.

#db

👉 @database_info
👍6👏2
Как вместо id подставить значение sql

Чтобы вместо значения id вставить другое значение в SQL, вы можете использовать оператор UPDATE для обновления данных в таблице.

Допустим, у вас есть таблица my_table со столбцами id, name и age. Чтобы обновить значение name для строки с определенным значением id, используйте следующий запрос:

UPDATE my_table SET name = 'New Name' WHERE id = 1;

В этом запросе my_table - это название вашей таблицы, name - это название столбца, значение которого нужно обновить, New Name - это новое значение, которое вы хотите установить, а id = 1 - это условие, которое определяет, какая строка должна быть обновлена. Вместо 1 вы можете использовать любое значение, которое соответствует условию.

Также вы можете использовать оператор UPDATE для обновления нескольких столбцов в одной строке.

Например, чтобы обновить значения столбцов name и age для строки с определенным значением id, используйте следующий запрос:

UPDATE my_table SET name = 'New Name', age = 30 WHERE id = 1;

В результате выполнения этого запроса значения столбцов name и age будут обновлены для строки с id равным 1.


#db

👉 @database_info
👍2
Media is too big
VIEW IN TELEGRAM
Оконные функции в SQL (Границы оконных функций)

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

Тайм-коды в видео:
00:00​ Начало
00:16 Описание инструкций ROWS и RANGE
02:39 Инструкция UNBOUNDED PRECEDING
03:32 Инструкция UNBOUNDED FOLLOWING
04:07 Инструкция «Числовое значение» PRECEDING
04:58 Инструкция «Числовое значение» FOLLOWING
06:43 Инструкция BETWEEN (применение INTERVAL)
09:25 Сравнение ROWS и RANGE
11:02 Значение по умолчанию при ORDER BY
11:52 Заключение

источник

#db

👉 @database_info
👍71👎1
Как сделать Case Sensitive сравнение в MySQL. Решение

Небинарные строки (CHAR, VARCHAR, TEXT) в MySQL по умолчанию не чувствительны к регистру. Поэтому запрос SELECT * FROM enterprise WHERE company = ‘SPG‘ выведет все три строки.

Для вывода только одной записи с ‘SPG’ существуют следующие решения:

1. Приведение столбца к типу BINARY (т.к. тип BINARY чувствителен к регистру):

SELECT * FROM enterprise WHERE BINARY company = ‘SPG‘;

2. Выбор чувствительного к регистру набора символов с помощью COLLATE:

SELECT * FROM enterprise WHERE company COLLATE utf8mb4_0900_as_cs = ‘SPG‘;


#db

👉 @database_info
👍2
Как распарсить строку в sql

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

Например, если строка содержит разделители, такие как запятые или пробелы, то можно использовать функцию SUBSTRING_INDEX() для извлечения определенного фрагмента строки. Например, следующий запрос извлекает первое слово из строки Привет, мир:

SELECT SUBSTRING_INDEX('Привет, мир', ' ', 1);

Результатом запроса будет строка Привет.

Если же требуется извлечь определенный набор символов из строки, то можно использовать функцию SUBSTRING(). Например, следующий запрос извлекает первые три символа из строки Привет:

SELECT SUBSTRING('Привет', 1, 3);

Результатом запроса будет строка При.

Также можно использовать функцию REGEXP_SUBSTR() для извлечения определенного фрагмента строки, используя регулярные выражения. Например, следующий запрос извлекает первое слово из строки Привет, мир:

SELECT REGEXP_SUBSTR('Привет, мир', '^[^ ]+');

Результатом запроса будет строка Привет.


#db

👉 @database_info
👍5👏3
Вывести последнюю запись в SQL

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

SELECT *
FROM table_name
ORDER BY id DESC
LIMIT 1;


Где table_name - это название таблицы, а id - это уникальный идентификатор записи. Здесь мы сначала сортируем записи по убыванию id, затем с помощью LIMIT 1 ограничиваем результат одной записью, что и позволяет вывести последнюю запись из таблицы.

#db

👉 @database_info
👍4🔥21
Foreign key sql что это

Foreign key (внешний ключ) в SQL - это столбец или набор столбцов в таблице, который связывается с Primary key (основным ключом) или уникальным ключом в другой таблице. Он служит для установления связи между двумя таблицами и обеспечивает целостность данных, позволяя контролировать ссылочную целостность в базе данных.

Foreign key определяет отношение между двумя таблицами: родительской таблицей (содержащей основной ключ) и дочерней таблицей (содержащей внешний ключ). Связь между ними обеспечивает ссылочную целостность, что означает, что значения внешнего ключа должны существовать как значения в основном ключе в другой таблице.

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

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

#db

👉 @database_info
👍62
Наглядное объяснение джоинов SQL

#db

👉 @database_info
👍4
🖥 Типы баз данных

#db

👉 @database_info
Please open Telegram to view this post
VIEW IN TELEGRAM
👍72