Базы данных (Data Base). По всем вопросам @evgenycarter
Темпоральные типы в PostgreSQL и их использование
Меня зовут Фролков Иван, я работаю программистом с 1993 года, и уже восемь лет — в Postgres Professional. Периодически выступаю на конференциях. В этой статье я расскажу вам про темпоральные типы данных в PostgreSQL — доклад о них я читал на PGConf.Russia 2022. Почему меня это заинтересовало? Мне много раз приходилось сталкиваться с тем, что из-за разницы часовых поясов не сходились отчёты за месяц или даже за сутки. Подобные проблемы возникают из-за н
https://habr.com/ru/companies/postgrespro/articles/766998/
#db
👉 @database_info
UNION в SQL
Оператор UNION
используется для объединения результатов двух или более запросов SELECT
в один набор результатов. Команда UNION отличается от JOIN-операторов, которые объединяют столбцы из двух таблиц. UNION создает новую таблицу, помещая все строки из двух исходных таблиц в таблицу результатов и располагая эти строки друг над другом.
Далее приведены основные правила объединения наборов результатов двух запросов SELECT с помощью UNION
:
- Количество и порядок столбцов должны быть одинаковыми во всех запросах.
- Типы данных соответствующих столбцов должны быть совместимы.
Если эти критерии выполняются, то таблицы совместимы с оператором UNION.
Синтаксис
Базовый синтаксис оператора UNION
представлен следующим образом:
SELECT список_столбцов FROM таблица1
UNION SELECT список_столбцов FROM таблица2;
Чтобы лучше понять, как работает оператор UNION
, предположим, что в таблицах employees
и departments
существуют некоторые гипотетические поля first_nam
e и last_name
. Обратите внимание, что эти поля на самом деле не существуют в демонстрационных таблицах.
Таблица employees
+----+------------+-----------+--------+
| id | first_name | last_name | salary |
+----+------------+-----------+--------+
| 1 | Ethan | Hunt | 5000 |
| 2 | Tony | Montana | 6500 |
| 3 | Sarah | Connor | 8000 |
| 4 | Rick | Deckard | 7200 |
| 5 | Martin | Blank | 5600 |
+----+------------+-----------+--------+
Таблица departments
+----+------------+-----------+----------+
| id | first_name | last_name | city |
+----+------------+-----------+----------+
| 1 | Maria | Anders | Berlin |
| 2 | Fran | Wilson | Madrid |
| 3 | Dominique | Perrier | Paris |
| 4 | Martin | Blank | Turin |
| 5 | Thomas | Hardy | Portland |
+----+------------+-----------+----------+
Выполним оператор UNION
, чтобы объединить результаты двух запросов.
Следующая команда вернет имена и фамилии всех клиентов и сотрудников:
SELECT first_name, last_name FROM employees
UNION
SELECT first_name, last_name FROM customers;
После выполнения приведенной выше команды вы получите такой результат:
+---------------+--------------+
| first_name | last_name |
+---------------+--------------+
| Ethan | Hunt |
| Tony | Montana |
| Sarah | Connor |
| Rick | Deckard |
| Martin | Blank |
| Maria | Anders |
| Fran | Wilson |
| Dominique | Perrier |
| Thomas | Hardy |
+---------------+--------------+
Оператор UNION
по умолчанию удаляет дублирующиеся строки из объединенного набора результатов. Вот почему приведенный выше запрос возвращает только 9 строк. Если вы заметили, имя Martin Blank встречается и в таблице employees
, и в таблице customers
.
Однако если вы хотите оставить дублирующиеся строки, используйте ключевое слово ALL
, как показано ниже:
SELECT first_name, last_name FROM employees
UNION ALL
SELECT first_name, last_name FROM customers;
#db
👉 @database_info
T-SQL Fundamentals, 4th Edition
Автор: Itzik Ben-Gan (2023)
Начиная с истории создания запросов и программирования на T-SQL, книга также включает: логическую обработку запросов, конструкции запросов (запросы к одной таблице, объединения, подзапросы, табличные выражения, операторы набора, анализ данных), модификации данных, временные таблицы, транзакции и параллелизм, SQL Graph (совершенно новый для этого издания), а также программные конструкции T-SQL. В книгу включены обширные упражнения и решения с пояснениями, что позволяет читателю на практике применять полученные знания.
#db
👉 @database_info
Визуализация SQL-запроса
SQL-запросы выполняются системой базы данных в несколько этапов, в том числе:
- разбор SQL-запроса и проверка его достоверности
- преобразование SQL-запроса во внутреннее представление, например в реляционную алгебру
- Оптимизация внутреннего представления и создание плана выполнения, использующего информацию об индексах
- Выполнение плана и возврат результатов
#db
👉 @database_info
Высокодоступный MySQL на конвейере
Что нужно автоматизировать в управляемой базе данных? Какие нас ждут проблемы эксплуатации MySQL в облаках? Разберём существующие решения, позволяющие обеспечивать эффективную конфигурацию под высокую доступность и высокие нагрузки, а также их недостатки и практическое применение.
Поможет нам в этом Дмитрий Смаль, руководитель подразделения Managed MySQL и SQL Server в Yandex Cloud. Каждый день он занимается эксплуатацией и автоматизацией СУБД, а до этого делал нагруженные и не очень web-приложения. В целом любит делать разные интересные штуковины, которые работают! Сегодня мы с ним будем говорить про решение для высокодоступного MySQL.
https://habr.com/ru/companies/oleg-bunin/articles/754634/
#db
👉 @database_info
Переход на PgCat — прокси-сервер Postgres следующего поколения
PgCat — это open source прокси-сервер Postgresql, в развитии которого мы участвуем и который используем на продакшене. Функционал PgCat для кластеров Postgresql: пул соединений, балансировка нагрузки, отработка отказа реплики.
В Instacart мы применяем Postgresql почти для всех задач баз данных: эффективным кешированием, индексированием, оптимизацией запросов и вертикальным масштабированием экземпляров выжимаем из одного экземпляра Postgres немало производительности. Все это отличные стратегии, но с ними далеко не уедешь. Не ограничиваясь одним экземпляром за счет добавления реплик чтения или горизонтального сегментирования БД, мы в обоих случаях увеличиваем сложность.
https://tech.instacart.com/adopting-pgcat-a-nextgen-postgres-proxy-3cf284e68c2f
#db
👉 @database_info
MongoDB. Полный курс
MongoDB - документно-ориентированная, NoSQL база, используемая для хранения больших объемов информации. Основная особенность базы - это представление данных в виде документов, структура которых напоминает JSON. Благодаря такому подходу MongoDB работает быстрее, обладает лучшей масштабируемость и ее легче использовать. Весь курс можно разбить на 2 основные части. В первой, мы разберём особенности работы с MongoDB, ключевые команды взаимодействия с базой и коллекцией. Команды поиска, сортировки, удаления и редактирования элементов. Во второй, используя Node.js, Express и библиотеку mongoose создадим свой API поддерживающий весь стэк CRUD операций.
✔ 0:00 - Введение (Introduction)
✔ 2:11 - Основные понятия (Basic Concepts)
✔ 9:15 - Установка инструментов (Installing Tools)
✔ 14:39 - Использование MongoDB Compass и Shell (Using MongoDB Compass & Shell)
✔ 20:04 - Добавление новых данных (Adding New Documents)
✔ 25:50 - Поиск документов (Finding Documents)
✔ 32:49 - Лимит и сортировка данных (Limiting & Sorting Data)
✔ 40:07 - Операторы и составные запросы (Operators & Complex Queries)
✔ 47:54 - Запросы вложенных документов (Querying Nested Documents)
✔ 53:55 - Удаление и обновление документов (Deleting & Updating Documents)
✔ 1:00:22 - Сложное обновление документов (Complex Updating Documents)
✔ 1:06:48 - Полезные методы и операторы (Useful Methods & Operators)
✔ 1:14:19 - Управление базами и коллекциями (Managing DBs & Collections)
✔ 1:21:06 - Создание сервера, подключение к БД (Creating Server & Connecting To MongoDB)
✔ 1:29:21 - Курсоры и получение данных (Cursors & Fetching Data)
✔ 1:35:09 - Чтение и удаление документа (Fetching & Removing Document)
✔ 1:40:51 - Создание и обновление документа (Creating & Updating Document)
✔ 1:47:28 - Интеграция mongoose (Mongoose Integration. Part I)
✔ 1:57:41 - Интеграция mongoose (Mongoose Integration. Part II)
✔ 2:04:43 - MVC и Роутер (MVC Pattern & Router)
✔ 2:12:58 - Облачная база данных MongoDB Atlas (MongoDB Atlas)
истрчник
#db
👉 @database_info
Тестирование на проникновение MSSQL
Эта шпаргалка создана специально для специалистов Red Team и специалистов по тестированию на проникновение. Она составлена таким образом, чтобы новички могли понять основы, а профессионалы - отточить свои навыки с помощью расширенных возможностей. Существует множество способов выполнения всех перечисленных задач, поэтому мы составили этот список на основе нашего опыта.
https://github.com/Ignitetechnologies/MSSQL-Pentest-Cheatsheet
#db
👉 @database_info
SQL Tutorial - Full Database Course for Beginners
⌨️ (0:00) Introduction
⌨️ (2:36) What is a Database?
⌨️ (23:10) Tables & Keys
⌨️ (43:31) SQL Basics
⌨️ (52:26) MySQL Windows Installation
⌨️ (1:01:59) MySQL Mac Installation
⌨️ (1:15:49) Creating Tables
⌨️ (1:31:05) Inserting Data
⌨️ (1:38:17) Constraints
⌨️ (1:48:11) Update & Delete
⌨️ (1:56:11) Basic Queries
⌨️ (2:08:37) Company Database Intro
⌨️ (2:14:05) Creating Company Database
⌨️ (2:30:27 ) More Basic Queries
⌨️ (2:26:24) Functions
⌨️ (2:45:13) Wildcards
⌨️ (2:53:53) Union
⌨️ (3:01:36) Joins
⌨️ (3:11:49) Nested Queries
⌨️ (3:21:52) On Delete
⌨️ (3:30:05) Triggers
⌨️ (3:42:12) ER Diagrams Intro
⌨️ (3:55:53) Designing an ER Diagram
⌨️ (4:08:34) Converting ER Diagrams to Schemas
https://www.youtube.com/watch?app=desktop&v=HXV3zeQKqGY
#db
👉 @database_info
Бесплатный пробный урок английского в UFirst!
Приглашаем на демо-урок по английскому языку. Все как на обычном уроке, только бесплатно!
Для детей 3-17 лет.
Познакомьтесь со школой, преподавателем, методикой, чтобы выбрать лучшее место для изучения английского.
Хотите попробовать? Бронируйте места в школах Москвы, Санкт-Петербурга и Новосибирска.
Забронировать
#реклама
ufirst.ru
О рекламодателе
Как создать свой бренд одежды и зарабатывать на этом
Нужно всего 3 составляющих:
1. Грант от государства на 300 000 ₽, который легко выдают молодому бизнесу.
2. Ваше желание.
3. Знания по организации модного бизнеса.
Меня зовут Анна Куц. Я основатель бренда спортивной одежды «Skin of Angel», запустила 4 линейки и владею 2 швейными производствами.
А еще я помогла запуститься более чем 250 брендам одежды.
Я помогу вам открыть свой бизнес и избежать ошибок, из-за которых 90% брендов закрываются.
Завтра стартует мой бесплатный мастер-класс на котором вы узнаете:
- Как запустить свой бренд одежды без умения шить и рисовать
- Сколько денег нужно для запуска первой коллекции
- Где найти надежного поставщика
- Какие топ-5 навыков дают стабильные продажи
- Как масштабировать свой бренд
Успей зарегистироваться бесплатно!
Зарегистрироваться
#реклама
fashion-brandschool.ru
О рекламодателе
Курс «Python-разработчик» от Яндекса. Начните с нуля.
Программа 2023 года.
Диплом о переподготовке и помощь с поиском работы.
Рассрочка.
Зарегистрироваться
#реклама 16+
practicum.yandex.ru
О рекламодателе
Курс «DevOps для эксплуатации и разработки» от Яндекса
За 6 месяцев обучения освоите принципы DevOps и автоматизацию процесса разработки.
Зарегистрироваться
#реклама 16+
practicum.yandex.ru
О рекламодателе
Яндекс Станция Макс
Режим Мультирум и Стереопара наполнит ваш дом объемным звуком
Узнать больше
#реклама
yandex.ru
О рекламодателе
Марафон «Основы инвестирования на фондовом рынке»
Участвуйте в бесплатном открытом марафоне от эксперта инвестиционной компании «Цифра брокер»!
Дата марафона: 19-20 октября!
Ведущий: Александр Мохов, заместитель директора департамента по работе с крупным частным капиталом
Возможность задать вопрос в прямом эфире!
Кому будет полезен марафон?
Всем, кто только присматривается к инвестициям
Узнаете оценку текущей ситуации практикующими инвесторами
Начинающим инвесторам
Поймете, как успешно управлять личными финансами в текущих реалиях.
Опытным инвесторам
Вместе с экспертами разберете текущую ситуацию на финансовых рынках и получите ответы на интересующие вопросы
Инвесторам с долгосрочной стратегией
Расширите кругозор и получите интересные мнения по точечным «горячим» темам сегодняшнего дня
Узнать больше
#реклама
marathon.cifra-broker.ru
О рекламодателе
Ответ на вопрос и Яндекс Музыка ваша за 1₽ до конца года
Яндекс Музыка для вас и 3-х ваших близких до конца года за 1₽. Попробуйте сейчас!
Попробовать
#реклама 16+
mrqz.me
О рекламодателе
Курс: Финансовое моделирование. Учись бесплатно!
Как бизнесмену взять под контроль все финансовые передвижения в своей компании?
Ему нужен расчёт финансовых показателей, который построен на данных о планируемом объёме продаж и предполагаемых затратах — финансовая модель.
Хотите развивать свой бизнес-проект, контролировать денежный оборот компании? Постройте правильную финансовую модель. Без неё все деньги в проекте бесконтрольно продвигаются, теряя ожидаемую прибыль.
Хотите научиться самостоятельно моделировать выручку, себестоимость, налоги, кредиты и займы? А также прогнозировать риски и допущения для своей компании?
Приходите на курс «Финансовое моделирование» от Skillbox и узнайте, как структурировать финансы и привлекать инвестиции в свой бизнес без сторонних специалистов.
Попробовать
#реклама 16+
skillbox.ru
О рекламодателе
Курс "Дизайнер интерьеров" с трудоустройством!
Обучение на дизайнера интерьеров квартир с нуля в онлайн-школе BBE.
Преподаватели — ведущие дизайнеры Crosby Studios, BŪRO.
Вы освоите Photoshop, ArchiCAD, 3Ds Max и подготовите
портфолио из 4 проектов!
Через 6 месяцев вы получите достаточно знаний, чтобы брать первые рабочие заказы. Дизайнеры интерьеров с опытом работы и портфолио зарабатывают в среднем 150–200 тысяч рублей в месяц.
Подать заявку
#реклама
bangbangeducation.ru
О рекламодателе
Тысячи работников уже здесь
Более 1 млн соискателей регулярно посещают hh.ru. Размещайте вакансии, получайте отклики, выбирайте подходящих людей и приглашайте на работу.
Зарегистрироваться
#реклама
hh.ru
О рекламодателе
Обучение на тренера по конному спорту. Диплом 2023!
Погрузитесь в профессию тренера по конному спорту всего за 3 месяца и начните применять новые знания сразу после прохождения курса!
Мы предлагаем:
- Квалификация: Тренер по конному спорту. (340 часов)
- Московский диплом о профпереподготовке с гос. лицензией за 3 месяца;
- Дистанционное обучение;
- Удобное мобильное приложение;
- Обучение в любое время, можно совмещать с основной работой;
- Доступ к учебным материалам навсегда.
Сделайте свой первый шаг к успешной карьере в любимом деле уже сегодня!
Ознакомиться с программой и получить бесплатную консультацию по курсу:
Подать заявку
#реклама
niidpo.ru
О рекламодателе
Террасная доска из ДПК
Woodgrand – производитель доски ДПК. Доставка по РФ с оплатой при получении! Звоните!
Получить предложение
#реклама
woodgrand.ru
О рекламодателе
Курс Графического дизайна со стажировкой в IT-компаниях
Преподаватели — ведущие дизайнеры из «Яндекса», Авито, «Сбера».
Практика на реальных задачах и брифах компаний Ozon и Самокат.
Научитесь создавать логотипы, фирменный стиль и рекламные материалы.
Изучите Photoshop, Illustrator, Figma и подготовите портфолио из 7 проектов.
Попробовать
#реклама
bangbangeducation.ru
О рекламодателе
Открытый практикум Linux by Rebrain: bash скрипты
Успевайте зарегистрироваться. Количество мест строго ограничено! Запись практикума “DevOps by Rebrain” в подарок за регистрацию!
👉Регистрация
Время проведения:
18 Октября (Среда) в 20:00 по МСК
Программа практикума:
🔹Что такое скрипт?
🔹Шебанг, что он делает и для кого мы его устанавливаем?
🔹Однострочные скрипты
Кто ведёт?
Андрей Буранов – Специалист по UNIX-системам в компании VK. Опыт работы с ОС Linux более 7 лет. Опыт преподавания более 5 лет. Входит в топ 3 лучших преподавателей образовательных порталов.
Бесплатные практикумы по DevOps, Linux, Networks и Golang от REBRAIN каждую неделю. Подключайтесь!
Реклама. ООО "РЕБРЕИН". ИНН 7727409582 erid: 2VtzqxFjF4X
Оптимизация данных в MS SQL
Одним из методов для оптимизации обработки, хранения и администрирования данных в базе данных и кубах MS SQL — это процесс создании партицирования данных.
Partitioning (партицирование или по-другому секционирование) — это разбиение таблицы на несколько частей, а эти части на одну или несколько файловых групп. Партицирование необходимо для целей ускорения доступа чтения или изменения данных и администрирования. Так как выровненный индекс по таблице будет содержаться в каждой условно своей секции, то при чтении или изменении данных будет обращение к конкретной секции и конкретному индексу в этой секции.
https://habr.com/ru/articles/705656/
#db
👉 @database_info
SQL. Базовый курс
№1. Установка PostgreSQL, создаем схему, таблицу и импортируем данные из CSV
№2. Простые операции, SELECT
№3. Типы данных
№4. Импорт и экспорт данных
№5. Группировка
№6. Математические операции
№7. CASE
№8. Дополнения к урокам 1-7
№9. Повторение изученного
№10. Подзапросы
№11. CTE
№12. Оконные функции. Ранг, ранжирование (ranking)
Все видео доступны на youtube
#db
👉 @database_info
Resilient Oracle PL/SQL: Building Resilient Database Solutions for Continuous Operation
Автор: Stephen Morris (2023)
В этом практическом руководстве системные администраторы, инженеры DevSecOps и архитекторы облачных вычислений получают краткий, но исчерпывающий обзор использования PL/SQL для разработки отказоустойчивых решений для баз данных.
Автор поможет вам понять язык, создать инструментарий PL/SQL и собрать набор многократно используемых компонентов и паттернов. Вы узнаете о преимуществах синтеза инструментария с подходом, ориентированным на требования и функциональные возможности, и научитесь создавать отказоустойчивые решения, синтезируя инструментарий PL/SQL в сочетании со шкалой отказоустойчивости.
#db
👉 @database_info
Шпаргалка по PostgreSQL
Содержит общие команды, которые позволят вам быстро и эффективно работать с PostgreSQL.
https://bookflow.ru/shpargalka-po-postgresql/
#db
👉 @database_info
Использование составных триггеров (compound triggers) Oracle
Перед нами стоят задачи
1- при обновлении поля orders.discount пересчитать orders_detail.sum_order, а также обновить поле orders.amount по всему заказу;
2 - при изменении orders_detail.price и(или) orders_detail.qty пересчитать orders_detail.sum_order, а также обновить поле orders.amount по всему заказу;
3- orders_detail.sum_order считается по формуле: orders_detail.sum_order = orders_detail.price * orders_detail.qty * (1- orders.discount/100).
При таких задачах возникает ошибка мутирования таблиц ORA-04091: table is mutating.
https://habr.com/ru/articles/748422/
#db
👉 @database_info
MySQL Crash Course: A Hands-on Introduction to Database Development
Автор: Rick Silva (2023)
В этом полном руководстве по работе с MySQL читатель найдет все необходимые знания, начиная с абсолютных основ создания таблицы и заканчивая сложностями управления всей базой данных. Вы научитесь создавать эффективные базы данных на интересных примерах, упражнениях и трех практических проектах по созданию баз данных для данных о погоде, избирателях и заработной плате.
#db
👉 @database_info
Oracle PL/SQL by Example, 6th Edition
Автор: Benjamin Rosenzweig (2023)
Используя PL/SQL для Oracle Database 21c, вы сможете создавать решения, обеспечивающие беспрецедентную производительность и эффективность в любой среде, включая облако. Шестое издание Oracle PL/SQL на примерах обучает всем необходимым навыкам работы с PL/SQL, используя реальные лабораторные задания и обширные примеры. Теперь, полностью обновленное для новейшей версии PL/SQL 21c, оно охватывает все, начиная с базового синтаксиса и управления программой и заканчивая последними усовершенствованиями в области оптимизации и настройки.
#db
👉 @database_info