Базы данных (Data Base). По всем вопросам @evgenycarter
Битовая операция NOT в SQL Server: как переключить бит
Оператор XOR (^)
позволяет инвертировать биты в SQL Server. Используя BitColumn = BitColumn ^ 1
, вы сможете поменять 0 на 1 и наоборот.
UPDATE ВашаТаблица SET BitColumn = BitColumn ^ 1 WHERE ВашеУсловие;
ВашеУсловие
.AND
, OR
, XOR
и NOT
.
-- Наблюдаем за инверсией всех битов!
UPDATE ваша_таблица SET ваш_столбец = ~ваш_столбец WHERE ваше_условие;
-- Из 0 делаем 1, из 1 — 0. Элегантно, не правда ли?
UPDATE ваша_таблица SET ваш_столбец = 1 – ваш_столбец WHERE ваше_условие;
-- Теперь нацеливаемся на определённый бит
UPDATE ваша_таблица SET ваш_столбец = ваш_столбец ^ битовая_маска WHERE ваше_условие;
Битовая_маска
— это число, которое в двоичной системе имеет 1 там, где находится нужный бит, и 0 — во всех остальных позициях.
UPDATE ваша_таблица SET ваш_столбец = 1 – ваш_столбец WHERE ваше_условие;
ваш_столбец
имеет значение 😐(0) или 😃(1). После инвертирования: теперь значение ваш_столбец
противоположное — 😃(1) или 😐(0).Хотите узнать секрет оптимизации SQL-запросов?
Очень важно понимать порядок выполнения.
В SQL-запросе операторы выполняются в следующем порядке:
1. FROM / JOIN
2. WHERE
3. GROUP BY
4. HAVING
5. SELECT
6. DISTINCT
7. ORDER BY
8. LIMIT / OFFSET
#db
👉 @database_info
Топ-10 самых популярных баз данных с открытым исходным кодом
1 - MySQL
2 - PostgreSQL
3 - MariaDB
4 - Apache Cassandra
5 - Neo4j
6 - SQLite
7 - CockroachDB
8 - Redis
9 - MongoDB
10 - Couchbase
#db
👉 @database_info
Быстрое добавление тысяч записей в SQLite через Django
Для высокопроизводительного массового внесения записей в базу данных SQLite через Django используйте функцию bulk_create()
. Она позволяет осуществить вставку множества записей за один запрос.
from myapp.models import MyModel
# Подготовим данные для массового внесения
bulk_records = [MyModel(field1='value1', etc.) for _ in range(thousands)]
# А вот и массовое внесение в действии!
MyModel.objects.bulk_create(bulk_records)
fОбучаем IT-специалистов и берём в команду ⚡️
Лучшим участникам предложим оффер в Т1 — крупнейшую по выручке ИТ-компанию страны по версии RAEX и CNews Analytics 2023🔝.
Зачем участвовать?
🔹 Уникальный рыночный опыт. Т1 одни из первых на рынке, кто внедряет технологии для управления данными.
🔹 Попасть в число лучших. Проекты Т1 ежегодно получают лучшие награды на ИТ-конкурсах: Global CIO, Национальная банковская премия и др.
🔹 Поддержка. Тебя ждёт команда опытных профессионалов, которые помогут расти и развиваться.
Выбирай:
📁 аналитик платформы данных (DWH)
🖥 разработчик платформы данных (DWH)
От тебя нужен только опыт работы от 6 месяцев в проектах разработки хранилищ данных и желание попасть в команду Т1.
⏰ Быстрое обучение: 1 месяц
📱 Гибкий формат: онлайн по вечерам (от 8 часов в неделю на вебинары и практику)
Подавай заявку до 2 ноября!
#реклама
О рекламодателе
Ваш бизнес всё ещё привязан к Oracle? Время избавиться от лишних расходов и рисков!
5 ноября в 20:00 мск мы проведём бесплатный открытый урок о том, почему PostgreSQL — это лучшая альтернатива и как провести миграцию без боли и сбоев.
На уроке мы сравним возможности PostgreSQL и Oracle, покажем, с чего начать миграцию баз данных и как избежать ошибок. Реальная демонстрация и разбор кейсов — вы увидите, как легко перейти на PostgreSQL.
Участники вебинара не только поймут все нюансы миграции, но и получат скидку на курс «Миграция с Oracle на PostgreSQL».
Не упустите возможность узнать, как сократить расходы на лицензии и повысить производительность вашей базы данных.
Регистрируйтесь на открытый вебинар прямо сейчас! 👇
https://vk.cc/cDM5w4Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Какие известные фестивали проходят в октябре?
Конечно же OTUS FEST!
Присоединяйтесь к трёхдневному IT-фестивалю.
Вас ждут 9 спикеров, мастер-классы, полезные знакомства и разбор интересных случаев из практики. Мы обсудим темы, которые волнуют IT-индустрию, поделимся технологическими хитростями, ответим на ваши вопросы.
Вы узнаете:
- На что обращать внимание при выборе фреймворков?
- С чего начать импортозамещение в ИБ?
- Как подходить к описанию архитектуры на разных уровнях?
- Как разработать стратегию тестирования, которая действительно работает?
- Чего ждать от революции в большой языковой модели?
- Чем «импортозаместить» Nginx?
- Куда движется российский геймдев?
- Какие важные тренды появились в HR за последние годы?
- Что делать аналитикам, чтобы их не заменил ИИ?
Ждём всех, кто работает с информационными технологиями.
Будет круто.
29, 30, 31 октября: можете выбрать любой удобный день или все три сразу.
Участие бесплатное
Записаться на OTUS FEST - https://otus.pw/5Whr/?erid=LjN8KSVbdРеклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
Подборка Telegram каналов для программистов
Системное администрирование 📌
/channel/sysadmin_girl Девочка Сисадмин
/channel/srv_admin_linux Админские угодья
/channel/linux_srv Типичный Сисадмин
/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux
1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
/channel/pythonofff Python академия. Учи Python быстро и легко🐍
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python Rus
Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах
GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
/channel/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
/channel/game_devv Все о разработке игр
Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов
/channel/books_reserv Книги для программистов
БигДата, машинное обучение 📌
/channel/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/coddy_academy Полезные советы по программированию
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼💻👩💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика
Шутки программистов 📌
/channel/itumor Шутки программистов
Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров
Английский 📌
/channel/UchuEnglish Английский с нуля
Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
/channel/Excel_lifehack
/channel/tikon_1 Новости высоких технологий, науки и техники💡
/channel/mir_teh Мир технологий (Technology World)
Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT
⁉️Хотите повысить свою квалификацию и стать дата-инженером?
Инвестируйте в успех своей карьеры прямо сейчас начав обучение на курсе «Data Engineer» от OTUS.
После обучения вы сможете:
✔️ Разворачивать, налаживать и оптимизировать инструменты обработки данных
✔️ Адаптировать датасеты для дальнейшей работы и аналитики
✔️ Создадите сервисы, которые используют результаты обработки больших объемов данных
✔️ Принимать участие в разработке архитектуры данных в компании
➡️ Пройдите короткий тест прямо сейчас, чтобы получить специальную цену на обучение: https://vk.cc/cDb8uM
🎁 А еще приятный бонус: до конца октября действует скидка 10% на обучение.Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Писать чистый SQL проще с pgx и sqlc в Go
Что такое pgx и sqlc?
pgx: это надежный набор инструментов и драйвер для PostgreSQL в Golang. Этот модуль также предоставляет полезные инструменты для облегчения работы со сложными запросами, делая их менее подверженными ошибкам.
sqlc: это инструмент для генерации кода, который преобразует ваши SQL-запросы в файлах .sql в Go-код с типобезопасностью как для параметров запроса, так и для результатов. Пример можно посмотреть здесь: sqlc playground. sqlc также поддерживает pgx "из коробки", что делает эту комбинацию отличным решением для работы с базами данных.
https://remvn.dev/posts/writing-raw-sql-easier-with-pgx-and-sqlc-in-go/
#sql
👉 @database_info
Совет по работе с базой данных💡
Дубликаты строк легко создаются по ошибке и почти так же легко удаляются: вы можете в *одном* SQL-запросе определить их, а также указать, какой из них оставить!
Вот самый быстрый способ 👆
#sql
👉 @database_info
❓Хотите узнать, как эффективно управлять PostgreSQL в облаках и Kubernetes-кластерах?
Ждем вас на открытом вебинаре 23 октября в 20:00 мск, где мы разберем:
- как правильно готовить Docker-контейнер для запуска PostgreSQL;
- управление развертыванием через Kubernetes с использованием операторов;
- добавление мониторинга и алертинга с помощью Prometheus и Grafana;
- использование новых возможностей репликации и быстрого запуска standby-реплики;
- интеграция задач миграции и обслуживания базы данных в CI/CD (на примере Gitlab).
Встречаемся в преддверии старта курса «PostgreSQL. Advanced». Все участники вебинара получат специальную цену на обучение!
👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cCZGUb
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
База данных 101: SSL/TLS для начинающих
Ещё раз делюсь с вами знаниями из моей повседневной работы в качестве Developer Advocate в ScyllaDB, и на этот раз я собираюсь рассказать вам о безопасных и зашифрованных соединениях! Это тема, которая может вызвать беспокойство у новичков, но я постараюсь сделать её проще для вас.
Если вы только начинаете работать с базами данных в общем или конкретно с базами данных, вам стоит начать с прочтения моей первой статьи "Базы данных 101: Консистентность данных для начинающих".
https://dev.to/scylladb/database-101-ssltls-for-beginners-4lmn
#db
👉 @database_info
Базы данных 101: Консистентность данных для начинающих
В конце 2022 года я решил прояснить ситуацию, когда речь заходит о базах данных, потому что это всегда было проблемой. Как бэкенд-разработчику, мне «нравилось» ненавидеть сложные запросы к базам данных. С этой мыслью я бросил себе вызов начать с нуля и изучить этот малоисследованный мир просто ради удовольствия.
https://dev.to/scylladb/database-101-why-so-interesting-1344
#db
👉 @database_info
PostgreSQL Antipatterns: «вращаем» JSON
Принимать сложные параметры запроса в виде JSON - полезно, хранить его в базе - удобно, но работа с ним в рамках SQL-запроса зачастую вызывает затруднения.
Сегодня столкнулся с очередным нетипичным вариантом использования - "перекладыванием" значений из JSON-строк в столбцы примерно такого вида:
SELECT
json_object_agg(js ->> 'language', coalesce(js ->> 'value', ''))
FILTER(WHERE js ->> 'language' = 'ru') ->> 'ru' ru
, json_object_agg(js ->> 'language', coalesce(js ->> 'value', ''))
FILTER(WHERE js ->> 'language' = 'en') ->> 'en' en
, json_object_agg(js ->> 'language', coalesce(js ->> 'value', ''))
FILTER(WHERE js ->> 'language' = 'de') ->> 'de' de
, json_object_agg(js ->> 'language', coalesce(js ->> 'value', ''))
FILTER(WHERE js ->> 'language' = 'fr') ->> 'fr' fr
FROM
(
VALUES
('{"language" : "ru", "value" : "Бухгалтерия"}'::json)
, ('{"language" : "en", "value" : "Accounting"}')
, ('{"language" : "de", "value" : "Buchhaltung"}')
, ('{"language" : "fr", "value" : "Comptabilité"}')
) T(js);
Подборка Telegram каналов для программистов
/channel/piterspb Канал о Санкт-Петербурге 🌇❤️💙
Системное администрирование 📌
/channel/sysadmin_girl Девочка Сисадмин 👩
/channel/srv_admin_linux Админские угодья
/channel/linux_srv Типичный Сисадмин
/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux
1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
/channel/pythonofff Python академия. Учи Python быстро и легко🐍
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python Rus
Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах
GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
/channel/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
/channel/game_devv Все о разработке игр
Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов
/channel/books_reserv Книги для программистов
БигДата, машинное обучение 📌
/channel/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/coddy_academy Полезные советы по программированию
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼💻👩💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика
Шутки программистов 📌
/channel/itumor Шутки программистов
Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров
Английский 📌
/channel/UchuEnglish Английский с нуля
Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
/channel/Excel_lifehack
/channel/tikon_1 Новости высоких технологий, науки и техники💡
/channel/mir_teh Мир технологий (Technology World)
Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT
Обучаем аналитиков платформы данных и берём в команду ⚡️
Регистрируйся на онлайн-интенсив в Открытые школы Т1!
От тебя нужен только опыт работы от 6 месяцев в проектах разработки хранилищ данных и желание попасть в команду Т1.
Лучшим участникам предложим оффер в Т1 — крупнейшую ИТ-компанию страны по версии RAEX и CNews Analytics 2023 🔝.
Зачем участвовать?
⚙️Получить поддержку наставников. В нашей команде — передовые специалисты в области разработки хранилищ данных и аналитических систем, которые помогут прокачать навыки. Карьерные треки для выпускников Открытых школ позволяют быстрее вырасти в мидла в Т1.
⚙️ Работать в классной компании, где есть все айтишные бонусы (ДМС, удалёнка и крутые офисы, спорт и обучение).
⌛️ Быстрое обучение: 1 месяц.
💻 Гибкий формат: все этапы онлайн, занятия по вечерам.
Бигтех ждёт тебя, подавай заявку до 8 ноября!
#реклама
О рекламодателе
Хотите автоматизировать рутину в базе данных?
5 ноября в 20:00 мск приглашаем вас на открытый вебинар «Триггеры в PostgreSQL». Узнайте, как с помощью триггеров можно управлять данными, автоматизировать процессы и поддерживать целостность данных в вашей базе.
На вебинаре вы:
- изучите основные возможности триггеров
- научитесь создавать их и управлять ими
- получите советы по оптимизации и отладке для реальных проектов.
Спикер Наталия Титова — опытный аналитик и преподаватель в области баз данных, анализа данных и DS. Старший преподаватель в департаменте прикладной математики МИЭМ НИУ ВШЭ.
Регистрируйтесь прямо сейчас и получите скидку на участие в курсе «PostgreSQL для администраторов баз данных и разработчиков».
https://vk.cc/cE2o8AРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Быстрый выбор случайной строки из большой таблицы MySQL
Для эффективного извлечения случайной записи из большой таблицы в MySQL стоит избегать команды ORDER BY RAND()
. Вместо этого используйте уникальный идентификатор id. Сначала определите максимальное значение id
, генерируйте случайное число в пределах этого диапазона и затем получите строку с соответствующим id
:
-- Отказываемся от полного сканирования таблицы, затратного по времени!
SELECT * FROM your_table
WHERE id >=
(SELECT FLOOR(1 + RAND() *
(SELECT MAX(id) FROM your_table)))
LIMIT 1;
-- Вместо 'your_table' укажите корректное имя вашей таблицы (если она не носит название 'your_table').
PostgreSQL: возврат 0, если avg(price) пусто (NULL)
Заменить NUL
L на 0 в PostgreSQL поможет функция COALESCE(ваша_колонка, 0):
SELECT COALESCE(ваша_колонка, 0) FROM ваша_таблица;
NULL
, будет возвращён 0.Визуализация связей таблиц в SQL Server
Выявить связи между таблицами в SQL Server можно обратившись к системным представлениям. Представленный ниже запрос вернёт информацию о всех внешних ключах:
SELECT
fk.name AS ForeignKey,
tp.name AS ParentTable,
cp.name AS ParentColumn,
tr.name AS ReferencedTable,
cr.name AS ReferencedColumn
FROM
sys.foreign_keys AS fk
INNER JOIN
sys.tables AS tp ON fk.parent_object_id = tp.object_id
INNER JOIN
sys.tables AS tr ON fk.referenced_object_id = tr.object_id
INNER JOIN
sys.foreign_key_columns AS fkc ON fkc.constraint_object_id = fk.object_id
INNER JOIN
sys.columns AS cp ON fkc.parent_column_id = cp.column_id AND fkc.parent_object_id = cp.object_id
INNER JOIN
sys.columns AS cr ON fkc.referenced_column_id = cr.column_id AND fkc.referenced_object_id = cr.object_id
Как настроить master-slave репликацию в mysql (кратко)?
Необходимы 2 сервера: master и slave.
1. На обеих сервера устанавливаем сервер MySQL одинаковой версии.
2. Включаем сервер базы данных на обеих серверах.
3. Настраиваем master - в /etc/my.cnf устанавливаем слеюущие значения:
# выбираем ID сервера, произвольное число, лучше начинать с 1
server-id = 1
# путь к бинарному логу
log_bin = /var/log/mysql/mysql-bin.log
# название Вашей базы данных, которая будет реплицироваться
binlog_do_db = newdatabase
mysql -u root -p <пароль root сервера БД>
GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
mysqldump -u root -p --lock-all-tables newdatabase > newdatabase.sql
CREATE DATABASE newdatabase;
mysql -u root -p newdatabase < newdatabase.sql
slave в /etc/my.cnf
:
# ID Слейва, удобно выбирать следующим числом после Мастера
server-id = 2
# Путь к relay логу
relay-log = /var/log/mysql/mysql-relay-bin.log
# Путь к bin логу на Мастере
log_bin = /var/log/mysql/mysql-bin.log
# База данных для репликации
binlog_do_db = newdatabase
CHANGE MASTER TO MASTER_HOST='10.10.0.1', MASTER_USER='slave_user', MASTER_PASSWORD='password',
MASTER_LOG_FILE = 'mysql-bin.000001', MASTER_LOG_POS = 107;
##Указанные значения мы берем из настроек Мастера
После этого запускаем репликацию на Слейве:
START SLAVE;
SHOW SLAVE STATUSG
Шпаргалка по выбору базы данных
#db
👉 @database_info
База данных баз данных
Откройте для себя и узнайте о 900 системах управления базами данных
https://dbdb.io/
#db
👉 @database_info
Хотите узнать, как использовать Patroni для управления высокодоступными кластерами PostgreSQL?
Ждем вас на открытом вебинаре 24 октября в 20:00 мск, где мы разберем:
- что такое Patroni и как он помогает обеспечить высокую доступность для PostgreSQL;
- основные компоненты и архитектуру Patroni;
- настройку и конфигурацию Patroni для работы с PostgreSQL;
- примеры использования Patroni для управления кластером PostgreSQL;
- практические советы по оптимизации и мониторингу работы кластера.
👨💻🛠👨🏻💻 Урок для DevOps-инженеров, системных администраторов, backend-разработчиков и тимлидов, стремящихся обеспечить высокую доступность PostgreSQL.
Спикер Андрей Поляков — старший разработчик в Unlimint.
Встречаемся в преддверии старта курса «Highload Architect». Все участники вебинара получат специальную цену на обучение! Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cD2naDРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Как найти дубли в sql
Для того чтобы найти дубликаты в базе данных SQL, можно использовать операторы SELECT
и GROUP BY
совместно с оператором HAVING
. Например, следующий запрос позволяет найти все строки, у которых значение определенного столбца повторяется более одного раза:
SELECT столбец, COUNT(*) AS количество
FROM таблица
GROUP BY столбец
HAVING COUNT(*) > 1;
SQL Injection - теория и примеры
В прошлом видео я поспешил рассказать и показать SQL Injection на практике, а в этом видео я хочу сделать шаг назад и поговорить чуть больше о теории и больше рассмотреть небольших примеров.
источник
#sql
👉 @database_info
SQL injection - почему, зачем и как защититься от SQL инъекции
В этом видио хотелось бы поговорить про очень опасную на мой взгляд хакерскую атаку SQL Injection. Это одна из старейших атак и она все ещё актуальна. Сегодня мы рассмотрим примеры использования SQL Injection на примере небольшого C# приложения. В других языках программирования и фреймворках все работает идентично.
источник
#sql
👉 @database_info
Возможности для молодых людей в «Алабуге»
В особой экономической зоне «Алабуга» активно развивается лидерская программа «100 Лидеров». В ней могут поучаствовать молодые специалисты от 19 до 29 лет.
У участников есть возможность познакомиться с топ-менеджерами компании, поиграть в бизнес-игры, пройти собеседования с реальным шансом трудоустройства в компанию «Алабуга».
Питание и проживание за счет компании.
Работа в «Алабуге» - это зарплата от 78 до 200 тысяч рублей и участие в реализации проектов мирового уровня.
Следующий поток - с 28 по 31 октября!
Заявку можно подать на сайте
Любая крупная БД рано или поздно начинает испытывать проблемы с производительностью.
Причина проблем может крыться в медленной работе запросов. Неоптимизированные запросы влияют на скорость выполнения различных задач, потребляют много ресурсов и усложняют доступ к данным.
Как же их отслеживать и оптимизировать?
Узнаете на открытом вебинаре «Как оптимизировать производительность запросов в PostgreSQL?»
Вы узнаете:
- как оптимизация запросов влияет на скорость обработки данных
- что влияет на производительность запросов
- как правильно использовать индексы для повышения производительности
- как выявлять медленные запросы с помощью инструментов мониторинга
Будет интересно: аналитикам, инженерам и разработчикам БД, бэкенд-специалистам, тимлидам и проект-менеджерам.
Спикер: Алексей Железной, преподаватель OTUS и старший инженер данных.
Бонус! Всем участникам – скидка 5% на любой курс OTUS и полезные гайды.
16 октября, 18:30 МСК, Бесплатно
Записаться на событие - https://otus.pw/8zDPl/?erid=LjN8KUAhZРеклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.