Статьи Утилиты Telegram YouTube VK Видео RuTube Отзывы

Статьи с тэгом «SQL»

Как сделать полный бэкап базы на postgres

29 апреля 2018

Тэги: PostgreSQL, руководство, SQL, файлы, devops.

Для создания полного бэкапа базы на postgres воспользуемся утилитой pg_dump. Бэкап представляет собой текстовый файл с sql-синтаксисом. При этом данные вставляются в более компактном виде.

Перейдём в целевой каталог, в котором планируется сохранить файл бэкапа. Затем выполняем команду:

pg_dump имя_базы -h хост -p порт -U пользователь > имя_файла_бэкапа.sql

Разумеется, подключиться можно как к локальной базе, так и к базе, расположенной на сервере. После того, как файл создался, можем приступить к созданию копии.

Для начала создайте базу (её имя может быть любым), а также пользователя, имя которого должно совпадать с именем пользователя, который работает с исходной базой. Скорее всего, это имя, которое вы использовали для параметра -U в команде, указанной выше. Но точнее лучше посмотреть в полученном файле бэкапа. В скрипте создания таблиц можно увидеть строчку вида:

alter table имя_базы owner to имя_пользователя;
Читать полностью...

Функции для работы с датой и временем в Oracle

26 апреля 2018

Тэги: SQL, Oracle.

Хочу привести несколько полезных функций, с которыми часто приходится сталкиваться при работе с датой и временем в Oracle.

Преобразование строки в дату:

to_date ('01-01-1970', 'dd-mm-yyyy')

Форматирование даты в строку:

select to_char(sysdate, 'yyyy-mm-dd HH24:MI:SS') from dual

Timestamp, представленный целым числом, преобразуем в дату:

select to_date('01-01-1970', 'dd-mm-yyyy') + (1417320144396 / (24 * 60 * 60 * 1000)) from dual
Читать полностью...

Произведение всех чисел в столбце таблицы одним SQL запросом

3 января 2018

Тэги: SQL, PostgreSQL, головоломки.

Каждый знает такую функцию SQL, как SUM(). Она позволяет посчитать сумму всех значений по определённому столбцу. Но что, если нам вдруг понадобится посчитать не сумму, а произведение всех значений?

Как ни странно, функция SUM() нам тоже пригодится. Как нам от произведения перейти к сумме? Вспомним начала матанализа: логарифм произведения равен сумме логарифмов. Будем использовать натуральный логарифм LN() в паре с функцией возведения экспоненты в степень EXP()

Привожу пример для postgresql, но должно работать и в других СУБД:

select exp(sum(ln(field))) from tab
Читать полностью...

❮ Назад