как разделить длинную команду psql в сценарии bash на несколько строк

Эмм ... это довольно просто: очередь. Один диск: одна очередь. Не имеет значения, пытаются ли две задачи получить доступ к разным файлам в одном разделе или в двух разных разделах; оба запроса помещаются в очередь, и драйвер диска обслуживает их по одному.

4
15.01.2016, 13:09
1 ответ

Если все, что вы пытаетесь сделать, это ввести свой базовый запрос, где вы делаете что-то вроде этого:

SELECT * 
FROM table_name... 

Кроме того, у вас есть дополнительные вещи, --такие как WHERE и ORDER BY; подобные вещи --и все, что вам нужно знать, это как просто аккуратно сложить это в отдельные строки, чтобы вы не просто печатали одну непрерывную строку запроса и т. д.

Просто нажмите клавишу ввода, если хотите перейти на следующую строку. Psql не примет запрос, пока вы не введете свой ;.

Помните, что это С УЧЕТОМ К РЕГИСТРУ, но не с учетом белого -пробела, как в примере ниже:

mycomputer=# SELECT *
mycomputer-# FROM sacramento 
mycomputer-# WHERE beds <= 1
mycomputer-# LIMIT 20;

Также важно знать, что если вы наберете чепуху, psql ничего вам не скажет! Он просто перейдет на следующую строку.

Также полезно знать, что если вы пишете более длинный запрос, который вы знаете, что будете использовать снова, гораздо эффективнее отредактировать файл с запросом и вызвать его в psql с помощью \i file_name.

Следующий пост в блоге очень помог мне в начале работы:

postgresql -на -команда --строка

0
08.08.2020, 16:23

Теги

Похожие вопросы