Триггеры в PostgreSQL: основы
Начнём с базы: триггер в PostgreSQL — это такая функция, которая запускается автоматически при определённом событии в таблице. С триггерами можно автоматизировать массу рутины и освободить приложение от сложных проверок и вычислений, но это палка о двух концах.
https://habr.com/ru/companies/otus/articles/857396/
#db
👉 @database_info
Начнём с базы: триггер в PostgreSQL — это такая функция, которая запускается автоматически при определённом событии в таблице. С триггерами можно автоматизировать массу рутины и освободить приложение от сложных проверок и вычислений, но это палка о двух концах.
https://habr.com/ru/companies/otus/articles/857396/
#db
👉 @database_info
👍8
Напишите SQL-запрос, который найдет суммарное количество заказов и общую сумму продаж для каждого месяца за последние 6 месяцев, и отобразит результаты только для тех месяцев, в которых было совершено более 100 заказов?
В этом примере мы используем функцию
#db
👉 @database_info
В этом примере мы используем функцию
DATE_TRUNC для округления даты до месяца. Затем мы считаем общее количество заказов с помощью функции COUNT и общую сумму продаж с помощью функции SUM. Затем мы используем выражение HAVING для фильтрации только тех месяцев, где количество заказов превышает 100. Наконец, мы сортируем результаты по месяцам с помощью выражения ORDER BY.#db
👉 @database_info
👍13
Ультимативная дорожная карта для изучения SQL и баз данных
SQL является одним из наиболее важных языков для работы с данными в Сети. Без SQL мы не смогли бы обмениваться данными настолько уверенным и мощным способом, как мы это делаем сегодня. Независимо от того, работаете ли вы с большими или маленькими данными, анализируете их, сохраняете или предоставляете доступ к ним, вероятно, вам нужно будет работать с SQL. И мы можем подтвердить его важность не только теоретически, но и на практике, представив некоторые исследования и статистики, которые показывают, как SQL используется в реальной жизни.
Я предлагаю вам свой roadmap, который поможет вам научиться работать SQL. Однако я хотел бы отметить, что SQL - это очень широкий и распространенный язык, и, к сожалению, невозможно освоить его полностью за короткое время. Чтобы стать настоящим экспертом в SQL, нужно много практиковаться и изучать различные аспекты языка на протяжении многих лет. Мой roadmap предлагает отличный старт для начала изучения SQL, поэтому я рекомендую вам приступить к обучению согласно моему плану. Продолжайте обучаться и практиковаться, и вы увидите результаты своих усилий уже в ближайшее время. Желаю вам успехов и удачного обучения!
https://habr.com/ru/articles/725414/
#db
👉 @database_info
SQL является одним из наиболее важных языков для работы с данными в Сети. Без SQL мы не смогли бы обмениваться данными настолько уверенным и мощным способом, как мы это делаем сегодня. Независимо от того, работаете ли вы с большими или маленькими данными, анализируете их, сохраняете или предоставляете доступ к ним, вероятно, вам нужно будет работать с SQL. И мы можем подтвердить его важность не только теоретически, но и на практике, представив некоторые исследования и статистики, которые показывают, как SQL используется в реальной жизни.
Я предлагаю вам свой roadmap, который поможет вам научиться работать SQL. Однако я хотел бы отметить, что SQL - это очень широкий и распространенный язык, и, к сожалению, невозможно освоить его полностью за короткое время. Чтобы стать настоящим экспертом в SQL, нужно много практиковаться и изучать различные аспекты языка на протяжении многих лет. Мой roadmap предлагает отличный старт для начала изучения SQL, поэтому я рекомендую вам приступить к обучению согласно моему плану. Продолжайте обучаться и практиковаться, и вы увидите результаты своих усилий уже в ближайшее время. Желаю вам успехов и удачного обучения!
https://habr.com/ru/articles/725414/
#db
👉 @database_info
Хабр
Ультимативная дорожная карта для изучения SQL и баз данных в 2023 году + источники для знаний
SQL является одним из наиболее важных языков для работы с данными в Сети. Без SQL мы не смогли бы обмениваться данными настолько уверенным и мощным способом, как мы это делаем сегодня. Независимо от...
👍3
Поиск значений в таблице, которые не совпадают с другой таблицей
Для выполнения поиска значений в таблице, которые не совпадают с другой таблицей в SQL, можно использовать операторы JOIN, NOT IN и NOT EXISTS.
1. JOIN - используется для объединения двух таблиц по заданному условию. Для поиска значений, которые не совпадают, можно использовать LEFT JOIN или RIGHT JOIN, а затем выбрать строки с NULL значениями в столбцах таблицы-присоединения.
2. NOT IN - спользуется для выбора значений из одной таблицы, которые не содержатся в другой таблице.
3. NOT EXISTS - используется для проверки наличия значений в подзапросе и выбора строк, которые не имеют соответствия в другой таблице.
#db
👉 @database_info
Для выполнения поиска значений в таблице, которые не совпадают с другой таблицей в SQL, можно использовать операторы JOIN, NOT IN и NOT EXISTS.
1. JOIN - используется для объединения двух таблиц по заданному условию. Для поиска значений, которые не совпадают, можно использовать LEFT JOIN или RIGHT JOIN, а затем выбрать строки с NULL значениями в столбцах таблицы-присоединения.
SELECT table1.column_name
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name
WHERE table2.column_name IS NULL;
2. NOT IN - спользуется для выбора значений из одной таблицы, которые не содержатся в другой таблице.
SELECT column_name
FROM table1
WHERE column_name NOT IN (SELECT column_name FROM table2);
3. NOT EXISTS - используется для проверки наличия значений в подзапросе и выбора строк, которые не имеют соответствия в другой таблице.
SELECT column_name
FROM table1
WHERE NOT EXISTS (SELECT column_name FROM table2
WHERE table2.column_name = table1.column_name );
#db
👉 @database_info
👍5
Media is too big
VIEW IN TELEGRAM
Продвинутый курс SQL за час - проще некуда
Сегодня я продолжу рассказывать про SQL и мы погрузимся уже в чуть более интересные запросы, связи и я попробую рассказать максимально просто о связях join и о группировках, на мой взгляд две не самые простые темы.
Содержание:
00:00 - Поехали
01:14 - Сортировка по номеру
03:23 - Ограничение вывода limit
06:30 - Уникальность данных distinct
08:18 - Сложение колонок
11:00 - Псевдонимы
15:35 - join - связи таблиц
27:45 - Left join
29:38 - Right join
35:00 - Быть или не быть (exists)
39:32 - Объединения union
41:42 - Глобальный поиск
43:45 - Агрегатные функции
54:00 - Группировка данных group by
источник
#db
👉 @database_info
Сегодня я продолжу рассказывать про SQL и мы погрузимся уже в чуть более интересные запросы, связи и я попробую рассказать максимально просто о связях join и о группировках, на мой взгляд две не самые простые темы.
Содержание:
00:00 - Поехали
01:14 - Сортировка по номеру
03:23 - Ограничение вывода limit
06:30 - Уникальность данных distinct
08:18 - Сложение колонок
11:00 - Псевдонимы
15:35 - join - связи таблиц
27:45 - Left join
29:38 - Right join
35:00 - Быть или не быть (exists)
39:32 - Объединения union
41:42 - Глобальный поиск
43:45 - Агрегатные функции
54:00 - Группировка данных group by
источник
#db
👉 @database_info
👍7🥰2
Ускоряем PostgreSQL с помощью Tuned
Администраторам баз данных всегда хочется, чтобы их СУБД работали быстрее. Всегда кажется, что можно прооптимизировать определенные настройки, и запросы начнут отрабатывать быстрее.
Есть множество различных параметров и настроек, которые позволяют оптимизировать работу БД PostgreSQL. В этой статье мы не будем пытаться охватить их все и поговорим об оптимизации параметров операционной и файловой систем, а также памяти на самом сервере СУБД.
https://habr.com/ru/companies/otus/articles/859270/
#db #PostgreSQL
👉 @database_info
Администраторам баз данных всегда хочется, чтобы их СУБД работали быстрее. Всегда кажется, что можно прооптимизировать определенные настройки, и запросы начнут отрабатывать быстрее.
Есть множество различных параметров и настроек, которые позволяют оптимизировать работу БД PostgreSQL. В этой статье мы не будем пытаться охватить их все и поговорим об оптимизации параметров операционной и файловой систем, а также памяти на самом сервере СУБД.
https://habr.com/ru/companies/otus/articles/859270/
#db #PostgreSQL
👉 @database_info
👍4❤1
Подборка Telegram каналов для программистов
Системное администрирование 📌
https://news.1rj.ru/str/sysadmin_girl Девочка Сисадмин
https://news.1rj.ru/str/srv_admin_linux Админские угодья
https://news.1rj.ru/str/linux_srv Типичный Сисадмин
https://news.1rj.ru/str/devops_star DevOps Star (Звезда Девопса)
https://news.1rj.ru/str/i_linux Системный администратор
https://news.1rj.ru/str/linuxchmod Linux
https://news.1rj.ru/str/sys_adminos Системный Администратор
https://news.1rj.ru/str/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://news.1rj.ru/str/sysadminof Книги для админов, полезные материалы
https://news.1rj.ru/str/i_odmin Все для системного администратора
https://news.1rj.ru/str/i_odmin_book Библиотека Системного Администратора
https://news.1rj.ru/str/i_odmin_chat Чат системных администраторов
https://news.1rj.ru/str/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://news.1rj.ru/str/sysadminoff Новости Линукс Linux
1C разработка 📌
https://news.1rj.ru/str/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://news.1rj.ru/str/cpp_lib Библиотека C/C++ разработчика
https://news.1rj.ru/str/cpp_knigi Книги для программистов C/C++
https://news.1rj.ru/str/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://news.1rj.ru/str/pythonofff Python академия. Учи Python быстро и легко🐍
https://news.1rj.ru/str/BookPython Библиотека Python разработчика
https://news.1rj.ru/str/python_real Python подборки на русском и английском
https://news.1rj.ru/str/python_360 Книги по Python Rus
Java разработка 📌
https://news.1rj.ru/str/BookJava Библиотека Java разработчика
https://news.1rj.ru/str/java_360 Книги по Java Rus
https://news.1rj.ru/str/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://news.1rj.ru/str/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://news.1rj.ru/str/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://news.1rj.ru/str/developer_mobila Мобильная разработка
https://news.1rj.ru/str/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://news.1rj.ru/str/frontend_1 Подборки для frontend разработчиков
https://news.1rj.ru/str/frontend_sovet Frontend советы, примеры и практика!
https://news.1rj.ru/str/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://news.1rj.ru/str/game_devv Все о разработке игр
Библиотеки 📌
https://news.1rj.ru/str/book_for_dev Книги для программистов Rus
https://news.1rj.ru/str/programmist_of Книги по программированию
https://news.1rj.ru/str/proglb Библиотека программиста
https://news.1rj.ru/str/bfbook Книги для программистов
https://news.1rj.ru/str/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://news.1rj.ru/str/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://news.1rj.ru/str/bookflow Лекции, видеоуроки, доклады с IT конференций
https://news.1rj.ru/str/coddy_academy Полезные советы по программированию
https://news.1rj.ru/str/rust_lib Полезный контент по программированию на Rust
https://news.1rj.ru/str/golang_lib Библиотека Go (Golang) разработчика
https://news.1rj.ru/str/itmozg Программисты, дизайнеры, новости из мира IT
https://news.1rj.ru/str/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://news.1rj.ru/str/nodejs_lib Подборки по Node js и все что с ним связано
https://news.1rj.ru/str/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
https://news.1rj.ru/str/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://news.1rj.ru/str/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://news.1rj.ru/str/thehaking Канал о кибербезопасности
https://news.1rj.ru/str/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://news.1rj.ru/str/ux_web Статьи, книги для дизайнеров
Английский 📌
https://news.1rj.ru/str/UchuEnglish Английский с нуля
Математика 📌
https://news.1rj.ru/str/Pomatematike Канал по математике
https://news.1rj.ru/str/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
https://news.1rj.ru/str/Excel_lifehack
https://news.1rj.ru/str/tikon_1 Новости высоких технологий, науки и техники💡
https://news.1rj.ru/str/mir_teh Мир технологий (Technology World)
Вакансии 📌
https://news.1rj.ru/str/sysadmin_rabota Системный Администратор
https://news.1rj.ru/str/progjob Вакансии в IT
Системное администрирование 📌
https://news.1rj.ru/str/sysadmin_girl Девочка Сисадмин
https://news.1rj.ru/str/srv_admin_linux Админские угодья
https://news.1rj.ru/str/linux_srv Типичный Сисадмин
https://news.1rj.ru/str/devops_star DevOps Star (Звезда Девопса)
https://news.1rj.ru/str/i_linux Системный администратор
https://news.1rj.ru/str/linuxchmod Linux
https://news.1rj.ru/str/sys_adminos Системный Администратор
https://news.1rj.ru/str/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://news.1rj.ru/str/sysadminof Книги для админов, полезные материалы
https://news.1rj.ru/str/i_odmin Все для системного администратора
https://news.1rj.ru/str/i_odmin_book Библиотека Системного Администратора
https://news.1rj.ru/str/i_odmin_chat Чат системных администраторов
https://news.1rj.ru/str/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://news.1rj.ru/str/sysadminoff Новости Линукс Linux
1C разработка 📌
https://news.1rj.ru/str/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://news.1rj.ru/str/cpp_lib Библиотека C/C++ разработчика
https://news.1rj.ru/str/cpp_knigi Книги для программистов C/C++
https://news.1rj.ru/str/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://news.1rj.ru/str/pythonofff Python академия. Учи Python быстро и легко🐍
https://news.1rj.ru/str/BookPython Библиотека Python разработчика
https://news.1rj.ru/str/python_real Python подборки на русском и английском
https://news.1rj.ru/str/python_360 Книги по Python Rus
Java разработка 📌
https://news.1rj.ru/str/BookJava Библиотека Java разработчика
https://news.1rj.ru/str/java_360 Книги по Java Rus
https://news.1rj.ru/str/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://news.1rj.ru/str/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://news.1rj.ru/str/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://news.1rj.ru/str/developer_mobila Мобильная разработка
https://news.1rj.ru/str/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://news.1rj.ru/str/frontend_1 Подборки для frontend разработчиков
https://news.1rj.ru/str/frontend_sovet Frontend советы, примеры и практика!
https://news.1rj.ru/str/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://news.1rj.ru/str/game_devv Все о разработке игр
Библиотеки 📌
https://news.1rj.ru/str/book_for_dev Книги для программистов Rus
https://news.1rj.ru/str/programmist_of Книги по программированию
https://news.1rj.ru/str/proglb Библиотека программиста
https://news.1rj.ru/str/bfbook Книги для программистов
https://news.1rj.ru/str/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://news.1rj.ru/str/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://news.1rj.ru/str/bookflow Лекции, видеоуроки, доклады с IT конференций
https://news.1rj.ru/str/coddy_academy Полезные советы по программированию
https://news.1rj.ru/str/rust_lib Полезный контент по программированию на Rust
https://news.1rj.ru/str/golang_lib Библиотека Go (Golang) разработчика
https://news.1rj.ru/str/itmozg Программисты, дизайнеры, новости из мира IT
https://news.1rj.ru/str/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://news.1rj.ru/str/nodejs_lib Подборки по Node js и все что с ним связано
https://news.1rj.ru/str/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
https://news.1rj.ru/str/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://news.1rj.ru/str/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://news.1rj.ru/str/thehaking Канал о кибербезопасности
https://news.1rj.ru/str/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://news.1rj.ru/str/ux_web Статьи, книги для дизайнеров
Английский 📌
https://news.1rj.ru/str/UchuEnglish Английский с нуля
Математика 📌
https://news.1rj.ru/str/Pomatematike Канал по математике
https://news.1rj.ru/str/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
https://news.1rj.ru/str/Excel_lifehack
https://news.1rj.ru/str/tikon_1 Новости высоких технологий, науки и техники💡
https://news.1rj.ru/str/mir_teh Мир технологий (Technology World)
Вакансии 📌
https://news.1rj.ru/str/sysadmin_rabota Системный Администратор
https://news.1rj.ru/str/progjob Вакансии в IT
👍2
Skytable
Это современная масштабируемая NoSQL-база данных с BlueQL, разработанная для повышения производительности, масштабируемости и гибкости. Skytable предоставляет пространства, модели, типы данных, сложные коллекции и многое другое для создания мощных решений.
https://github.com/skytable/skytable
#db
👉 @database_info
Это современная масштабируемая NoSQL-база данных с BlueQL, разработанная для повышения производительности, масштабируемости и гибкости. Skytable предоставляет пространства, модели, типы данных, сложные коллекции и многое другое для создания мощных решений.
https://github.com/skytable/skytable
#db
👉 @database_info
🔥4👍2
SQL-джоины могут показаться сложными на первых порах, но для анализа данных часто необходимо объединять таблицы, чтобы получить полезные инсайты.
Я нашёл простую диаграмму, которая объясняет основные типы джоинов: INNER, FULL, LEFT и RIGHT.
- INNER JOIN выбирает только совпадающие записи, работая с пересечениями.
- FULL JOIN включает все данные, даже если совпадений нет.
- LEFT JOIN и RIGHT JOIN приоритетно сохраняют все строки из одной таблицы, добавляя данные из другой при совпадении.
Каждый тип джоина имеет своё назначение, помогая извлекать данные из нескольких таблиц на основе общих ключей. Знание, какой тип использовать, экономит время и повышает точность анализа.
SQL может пугать новичков, но визуализации помогают понять назначение и влияние каждого типа джоина.
#db
👉 @database_info
Я нашёл простую диаграмму, которая объясняет основные типы джоинов: INNER, FULL, LEFT и RIGHT.
- INNER JOIN выбирает только совпадающие записи, работая с пересечениями.
- FULL JOIN включает все данные, даже если совпадений нет.
- LEFT JOIN и RIGHT JOIN приоритетно сохраняют все строки из одной таблицы, добавляя данные из другой при совпадении.
Каждый тип джоина имеет своё назначение, помогая извлекать данные из нескольких таблиц на основе общих ключей. Знание, какой тип использовать, экономит время и повышает точность анализа.
SQL может пугать новичков, но визуализации помогают понять назначение и влияние каждого типа джоина.
#db
👉 @database_info
👍14❤4
Базы данных для разработчиков: Foundations
Бесплатный курс по SQL
Изучите SQL в этом БЕСПЛАТНОМ учебном курсе, состоящем из 12 частей. Он поможет вам начать работу с Oracle Database и SQL. Курс представляет собой серию видеороликов, в которых рассказывается о концепциях баз данных, интерактивные учебники по SQL и тесты для закрепления полученных знаний.
По завершению курса вы получите бесплатный сертификат.
https://devgym.oracle.com/pls/apex/dg/class/databases-for-developers-foundations.html
#db
👉 @database_info
Бесплатный курс по SQL
Изучите SQL в этом БЕСПЛАТНОМ учебном курсе, состоящем из 12 частей. Он поможет вам начать работу с Oracle Database и SQL. Курс представляет собой серию видеороликов, в которых рассказывается о концепциях баз данных, интерактивные учебники по SQL и тесты для закрепления полученных знаний.
По завершению курса вы получите бесплатный сертификат.
https://devgym.oracle.com/pls/apex/dg/class/databases-for-developers-foundations.html
#db
👉 @database_info
👍1
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Mysql
MySQL просто SELECT - уроки mysql
Mysql просто HAVING группировка - sql уроки
Mysql просто что такое JOINS обьединение - mysql уроки
Mysql просто INNER JOIN, LEFT JOIN, RIGHT JOIN
MySQL просто о сложном установка базы данных
mysql query cache возможные проблемы кэширование запросов
MySQL индекс не работает
источник
#db
👉 @database_info
MySQL просто SELECT - уроки mysql
Mysql просто HAVING группировка - sql уроки
Mysql просто что такое JOINS обьединение - mysql уроки
Mysql просто INNER JOIN, LEFT JOIN, RIGHT JOIN
MySQL просто о сложном установка базы данных
mysql query cache возможные проблемы кэширование запросов
MySQL индекс не работает
источник
#db
👉 @database_info
👍1
🔥Хотите повысить производительность работы с большими данными?
🦾 Ваша база знаний начинается с Cassandra!
Присоединяйтесь к открытому уроку «Интеграция Cassandra с приложениями».
Дата: 18 декабря в 20:00 мск
Cassandra — одна из самых востребованных NoSQL-баз для высоконагруженных систем. На уроке вы узнаете, как интегрировать её с приложениями и BI-инструментами, работать с данными и создавать простое приложение для Cassandra.
Вы сможете освоить технику загрузки больших объемов данных, изучите, как приложения могут эффективно взаимодействовать с базами на Cassandra, и получите важные навыки в аналитике!
🔗 Ссылка на регистрацию: https://vk.cc/cFXWZQ
Присоединяйтесь к открытому уроку «Интеграция Cassandra с приложениями».
Дата: 18 декабря в 20:00 мск
Cassandra — одна из самых востребованных NoSQL-баз для высоконагруженных систем. На уроке вы узнаете, как интегрировать её с приложениями и BI-инструментами, работать с данными и создавать простое приложение для Cassandra.
Вы сможете освоить технику загрузки больших объемов данных, изучите, как приложения могут эффективно взаимодействовать с базами на Cassandra, и получите важные навыки в аналитике!
🔗 Ссылка на регистрацию: https://vk.cc/cFXWZQ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
😁1
📌Подборка книг по PostgreSQL: от баз данных с «нуля» для самоучек до руководства про БД в облаках. Часть 1
🟢 «Оптимизация запросов PostgreSQL» — Г. Домбровская, Б. Новиков, А. Бейликова
Уровень:
Что в ней классного: Книга научит администраторов баз данных, у которых нет достаточного опыта работы с PostgreSQL, решать распространенные проблемы с помощью этой СУБД. Например, в издании подробно описывается, что делать, когда не открывается страница приложения или система вылетает прямо перед совершением ключевых действий. Все представленные в книге сценарии протестированы авторами, которые долгое время работали с промышленными приложениями.
На примере работы с обширной базой данных виртуальной авиакомпании вы научитесь:
🔹выполнять целевую оптимизацию в системах OLTP и OLAP,
🔹лучше понимать планы выполнения в системе PostgreSQL,
🔹выбирать индексы, улучшающие производительность запросов,
🔹оптимизировать процесс полного сканирования таблиц,
🔹выбирать наилучшую технику оптимизации для определенных запросов,
🔹безболезненно решать проблемы при работе с ORM-фреймворками.
🟢 «Изучаем PostgreSQL 10» — С. Джуба, А. Волков
Уровень:
Что в ней классного: Авторы — практики с большим опытом работы не только с PostgreSQL. Так, Джуба Салахалдин — сертифицированный разработчик ПО, спец по СУБД PostgreSQL, Greenplum и SQL Server, ETL-процессам обработки данных, разработке приложений OLAP и OLTP. Как отмечают авторы, информации, содержащейся в руководстве, будет достаточно, чтобы ответить на все вопросы начинающего разработчика или администратора баз данных.
Среди освещаемых в книге тем:
🔹реляционные и объектно-реляционные БД с необходимыми алгебраическими операциями и 🔹моделированием данных,
🔹достоинства, архитектурные особенности и возможности PostgreSQL,
🔹основные блоки и функции PostgreSQL, включая кодирование, иерархию объектов и 🔹компоненты баз данных (в качестве примера рассмотрена БД автомобильного сайта),
🔹дополнительные блоки и продвинутые функции Postgres: представления, выборки, извлечения, 🔹возвращение множеств, подзапросы, возможности группировки и агрегирования
🔹транзакции, блокировки, основы безопасности, типы и структуры данных, каталоги,
🔹оптимизация производительности и тестирование,
🔹совместимость с серверными приложениями, написанными на Python, проблемы масштабируемости.
🟢 «Основы технологий баз данных: учебное пособие» — Б. Новиков, Е. Горшкова, Н. Графеева
Уровень:
Что в ней классного: Учебник разделен на две части. Первая предназначена для новичков в науке о базах данных. В ней начинающие специалисты узнают об основах проектирования приложений, причем в качестве базовой СУБД для изучения используется PostgreSQL.
Вторая часть будет интересна тем, у кого уже есть опыт работы с СУБД. Разработчики и администраторы баз данных на Postgres познакомятся с возможностями языка SQL, выходящими за рамки базовых курсов, узнают о том, как создавать параллельные и распределенные системы БД на основе PostgreSQL. После каждой главы даются упражнения для закрепления материала.
Это пособие было написано для студентов технических вузов. Но оно будет также полезно каждому практикующему разработчику и администратору баз данных PostgreSQL, желающему повысить свой профессиональный уровень или решить конкретную задачу.
Темы, будут интересны профессиональным разработчикам, включают:
🔹адаптивные методы оптимизации запросов: параметрическая, семантическая и 🔹многокритериальная оптимизация запросов,
🔹вопросы обеспечения надежности БД, механизмы восстановления, описание разрушения 🔹носителя, дополнительные возможности, функции и процедуры PL/pgSQL и динамического SQL,
🔹механизмы расширения PostgreSQL, включая специальные модули, обертки и сторонние 🔹процедурные языки, модели, средства и обеспечение поддержки полнотекстового и нечеткого поиска,
🔹обеспечение безопасности данных, права и разграничение доступа, привилегии, 🔹администрирование, репликация БД, архитектура параллельных и распределенных БД, вопросы согласованности и выполнения запросов.
#db
👉 @database_info
🟢 «Оптимизация запросов PostgreSQL» — Г. Домбровская, Б. Новиков, А. Бейликова
Уровень:
продолжающиеЧто в ней классного: Книга научит администраторов баз данных, у которых нет достаточного опыта работы с PostgreSQL, решать распространенные проблемы с помощью этой СУБД. Например, в издании подробно описывается, что делать, когда не открывается страница приложения или система вылетает прямо перед совершением ключевых действий. Все представленные в книге сценарии протестированы авторами, которые долгое время работали с промышленными приложениями.
На примере работы с обширной базой данных виртуальной авиакомпании вы научитесь:
🔹выполнять целевую оптимизацию в системах OLTP и OLAP,
🔹лучше понимать планы выполнения в системе PostgreSQL,
🔹выбирать индексы, улучшающие производительность запросов,
🔹оптимизировать процесс полного сканирования таблиц,
🔹выбирать наилучшую технику оптимизации для определенных запросов,
🔹безболезненно решать проблемы при работе с ORM-фреймворками.
🟢 «Изучаем PostgreSQL 10» — С. Джуба, А. Волков
Уровень:
начинающиеЧто в ней классного: Авторы — практики с большим опытом работы не только с PostgreSQL. Так, Джуба Салахалдин — сертифицированный разработчик ПО, спец по СУБД PostgreSQL, Greenplum и SQL Server, ETL-процессам обработки данных, разработке приложений OLAP и OLTP. Как отмечают авторы, информации, содержащейся в руководстве, будет достаточно, чтобы ответить на все вопросы начинающего разработчика или администратора баз данных.
Среди освещаемых в книге тем:
🔹реляционные и объектно-реляционные БД с необходимыми алгебраическими операциями и 🔹моделированием данных,
🔹достоинства, архитектурные особенности и возможности PostgreSQL,
🔹основные блоки и функции PostgreSQL, включая кодирование, иерархию объектов и 🔹компоненты баз данных (в качестве примера рассмотрена БД автомобильного сайта),
🔹дополнительные блоки и продвинутые функции Postgres: представления, выборки, извлечения, 🔹возвращение множеств, подзапросы, возможности группировки и агрегирования
🔹транзакции, блокировки, основы безопасности, типы и структуры данных, каталоги,
🔹оптимизация производительности и тестирование,
🔹совместимость с серверными приложениями, написанными на Python, проблемы масштабируемости.
🟢 «Основы технологий баз данных: учебное пособие» — Б. Новиков, Е. Горшкова, Н. Графеева
Уровень:
смешанныйЧто в ней классного: Учебник разделен на две части. Первая предназначена для новичков в науке о базах данных. В ней начинающие специалисты узнают об основах проектирования приложений, причем в качестве базовой СУБД для изучения используется PostgreSQL.
Вторая часть будет интересна тем, у кого уже есть опыт работы с СУБД. Разработчики и администраторы баз данных на Postgres познакомятся с возможностями языка SQL, выходящими за рамки базовых курсов, узнают о том, как создавать параллельные и распределенные системы БД на основе PostgreSQL. После каждой главы даются упражнения для закрепления материала.
Это пособие было написано для студентов технических вузов. Но оно будет также полезно каждому практикующему разработчику и администратору баз данных PostgreSQL, желающему повысить свой профессиональный уровень или решить конкретную задачу.
Темы, будут интересны профессиональным разработчикам, включают:
🔹адаптивные методы оптимизации запросов: параметрическая, семантическая и 🔹многокритериальная оптимизация запросов,
🔹вопросы обеспечения надежности БД, механизмы восстановления, описание разрушения 🔹носителя, дополнительные возможности, функции и процедуры PL/pgSQL и динамического SQL,
🔹механизмы расширения PostgreSQL, включая специальные модули, обертки и сторонние 🔹процедурные языки, модели, средства и обеспечение поддержки полнотекстового и нечеткого поиска,
🔹обеспечение безопасности данных, права и разграничение доступа, привилегии, 🔹администрирование, репликация БД, архитектура параллельных и распределенных БД, вопросы согласованности и выполнения запросов.
#db
👉 @database_info
👍8❤1
Как найти дубликат записи? Опишите процесс для дублирования записей с одним и несколькими полями.
Дублирование записей с одним полем:
Дублирование записей с несколькими полями:
#db
👉 @database_info
Дублирование записей с одним полем:
SELECT name, COUNT(email)
FROM users
GROUP BY email
HAVING COUNT(email) > 1Дублирование записей с несколькими полями:
SELECT name, email, COUNT(*)
FROM users
GROUP BY name, email
HAVING COUNT(*) > 1 #db
👉 @database_info
👍12❤2