Пишу функцию, которой на вход подается массив строк, новый елемент и строка. Строка является подстрокой в одном из елеметнов массива.
create function replace_participant(text[], text, text)
returns text[]
as
$$
declare
arrParticipants alias for $1;
newParticip alias for $2;
subStr alias for $3;
retVal text[];
begin
for i in array_lower(arrParticipants, 1) .. array_upper(arrParticipants, 1) loop
retVal[i] :=
if then
$2
else
retVal[i]
end if;
end loop;
return retVal;
хочу размножить item.ts_range (тип tsrange), что-то типа:
with ddd AS (select * from unnest(array['1 days', '2 days']) d)
SELECT tsrange(lower(ts_range) + interval ddd.d, upper(ts_range) + interval ddd.d) as ts_range
FROM item, ddd
но ругается
как это грамотно сделать?
Здравствуйте!
Не посоветуете наилучшее решение для реализации джобов в PostgreSQL? Слышал, что штатный pgAgent на Linux работает плохо, так ли это?
1. Осуществляю SELECT запрос на поиск json кода
2. Поиск завершается успешно
3. Проверяю ячейку с данными jcon запроса
ER: Выводится весь json запрос
AR: json запрос обрезан. Код обрывается символами (...)
OS: Ubuntu
PostgreSQL брался из центра приложений Ubuntu (pgadmin3 1.18.1-2)
Можно ли это как-то вылечить или обойти (без смены ОС)?
Господа, намучился я с PostgreSQL(чувствую себя героем анекдота стою на асфальте я в лыжи обутый толи лыжи не едут nоли я долбанутый). Хочу изучить для себя новую СУБД.
Установил в соотв. с мануалом PostgreSQL for Beginners v2i с офиц. сайта ОС W7, версии PSQL 9.6,
при установке ввел пароль для пользователя (без него далее не пускает) postgres для подключения к базе. После установки открывается pgAdmin происходит подключение к серверу после ввода этого пароля.
Хочу поработать через SQL Shell (psql), запускаю
Server [localhost]: нажимаю Enter
Database [postgres]: нажимаю Enter
На aws установлен postgres 9.6. Имеется в базе табличка posts с 2,5 млн записей. В табличке есть колонка колнка text[] tags. На колонку tags установлен gin-индекс.
Простой запрос c фильтром по элементу массива tags выполняется неадекватно долго:
explain analyze
SELECT count(*)
FROM posts
WHERE ARRAY ['love'::text] <@ "tags"
"Aggregate (cost=235726.85..235726.86 rows=1 width=8) (actual time=116389.531..116389.532 rows=1 loops=1)"
" -> Bitmap Heap Scan on posts (cost=4854.04..234939.10 rows=315102 width=0) (actual time=358.306..116243.970 rows=340759 loops=1)"
Здравствуйте.
Доброго времени суток. Нужна Ваша помощь, в PGSQL есть ли анологичные функции такие как в MySQL:
TIMESTAMPADD, ADDTIME, TIMEDIFF?
Всем доброго времени суток!
На первых порах знакомства с Postgres испытал тотальный шок.
До этого работал на MS SQL server, а еще ранее на Oracle, но такого не встречал.
CREATE OR REPLACE VIEW a_cv_sh_sale AS
SELECT t1.id_sale,
t1.id_product,
t1.id_customer,
t1.id_pay_method,
t1.id_employee,
t1.quantity_sold,
t2.price::double precision * t1.quantity_sold AS sold_cost_total,
t1.date_sale,
date_part('month'::text, t1.date_sale) AS month_sale,
date_part('year'::text, t1.date_sale) AS year_sale,
t2.short_name as product_name,
Здравствуйте, я новичок , сейчас пишу базу на postgres(пишу себе диплом)
Возникла ошибка при создании двух последних таблиц, остальное все хорошо, создал и заполнил...
"ОШИБКА: число столбцов в источнике и назначении внешнего ключа не совпадает"
CREATE TABLE specsubject(
codespec varchar(10) not null,
codesubject integer not null,
PRIMARY KEY(codespec, codesubject),
CONSTRAINT from_listspec_for_specsubject FOREIGN KEY(codespec) REFERENCES listspec,
CONSTRAINT from_listsubjects_for_specsubject FOREIGN KEY(codesubject) REFERENCES listsubjects
);
CREATE TABLE listprior(