Вопросы с тегом «postgresql-9.4»

PostgreSQL версия 9.4

2
Обновление materalized представления постепенно в PostgreSQL
Можно ли постепенно обновлять материализованное представление в PostgreSQL, т.е. только для данных, которые являются новыми или изменились? Рассмотрим эту таблицу и материализованное представление: CREATE TABLE graph ( xaxis integer NOT NULL, value integer NOT NULL, ); CREATE MATERIALIZED VIEW graph_avg AS SELECT xaxis, AVG(value) FROM graph GROUP BY xaxis Периодически …

5
ВЫБЕРИТЕ DISTINCT на нескольких столбцах
Предположим, у нас есть таблица с четырьмя столбцами (a,b,c,d)одного типа данных. Можно ли выбрать все отдельные значения в данных в столбцах и вернуть их в виде одного столбца, или мне нужно создать функцию для достижения этой цели?

3
Запросите определение материализованного представления в Postgres
Мне интересно, как запросить определение материализованного представления в Postgres. Для справки, то, что я надеялся сделать, очень похоже на то, что вы можете сделать для обычного просмотра: SELECT * FROM information_schema.views WHERE table_name = 'some_view'; который дает вам следующие столбцы: table_catalog table_schema table_name view_definition check_option is_updatable is_insertable_into is_trigger_updatable is_trigger_deletable is_trigger_insertable_into …

2
Строка «Recheck Cond:» в планах запросов с проверкой растрового индекса
Это ответвление от комментариев к предыдущему вопросу: Запрос Postgres 9.4.4 длится вечно При использовании PostgreSQL 9.4 всегда появляется Recheck Cond:строка после сканирования растрового индекса в планах запросов, выводимых с помощью EXPLAIN. Как в EXPLAINвыводе упомянутого вопроса: -> Bitmap Heap Scan on table_three (cost=2446.92..19686.74 rows=8159 width=7) Recheck Cond: (("timestamp" > (now() …

2
Сохраняет ли Postgres порядок вставки записей?
Например, когда я использую запрос, который возвращает идентификаторы записей INSERT INTO projects(name) VALUES (name1), (name2), (name3) returning id; Который производит продукцию: 1 2 3 Будут ли эти идентификаторы указывать на соответствующие вставленные значения? 1 -> name1 2 -> name2 3 -> name3

3
Как обновить PostgreSQL с версии 8.4 до 9.4?
Я хочу обновить свой PostgreSQL с версии 8.4 до 9.4 . Документация не очень ясно для меня. Я потеряю свои старые базы данных, если я сделаю обновление? Как я могу сделать резервную копию моих старых баз данных, если я потеряю их после обновления? Как я могу обновить свой PSQL? Мой …

2
Как делать инкрементное резервное копирование каждый час в Postgres?
Попытка сделать почасовое инкрементное резервное копирование одного сервера Postgres (Win7 64). У меня есть следующие настройки в postgresql.conf: max_wal_senders = 2 wal_level = archive archive_mode = on archive_command = 'copy "%p" "c:\\postgres\\foo\\%f"' (начать сначала) Я сделал базовое резервное копирование с pg_basebackup -U postgres -D ..\foo -F t -x Это сделало …

1
Массив запросов PostgreSQL JSON для нескольких значений
Я хочу написать запрос к jsonbтипу в Postgres, который, учитывая массив идентификаторов клиентов, найдет соответствующие группы. Учитывая этот пример таблицы: CREATE TABLE grp(d JSONB NOT NULL); INSERT INTO grp VALUES ('{"name":"First","arr":["foo"], "customers":[{"id":"1", "name":"one"},{"id":"2", "name":"two"}]}') , ('{"name":"Second","arr":["foo","bar"], "customers":[{"id":"3", "name":"three"},{"id":"4", "name":"four"}]}') , ('{"name":"Third","arr":["bar","baz"], "customers":[{"id":"5", "name":"five"},{"id":"6", "name":"seven"}]}'); Я нашел похожий вопрос ( PostgreSql …

2
Поиск триграмм становится намного медленнее, так как строка поиска становится длиннее
В базе данных Postgres 9.1 у меня есть таблица table1с ~ 1,5M строк и столбцом label(упрощенные имена ради этого вопроса). Имеется функциональный индекс-триграмм lower(unaccent(label))( unaccent()сделан неизменным, чтобы его можно было использовать в индексе). Следующий запрос довольно быстрый: SELECT count(*) FROM table1 WHERE (lower(unaccent(label)) like lower(unaccent('%someword%'))); count ------- 1 (1 row) …

1
Как мне разложить ctid на номера страниц и строк?
Каждая строка в таблице имеет системный столбец ctid типа, tidкоторый представляет физическое местоположение строки: create table t(id serial); insert into t default values; insert into t default values; select ctid , id from t; Ctid | Я бы : ---- | -: (0,1) | 1 (0,2) | 2 dbfiddle здесь …

1
Как разделить длинную строку кода PL / pgSQL на несколько строк?
Есть ли способ разбить длинную строку кода PL / pgSQL на несколько строк? Мой контекст - это триггерная функция, в которую я записываю вставки в таблицу согласно: INSERT INTO insert_log (log_time, description) VALUES ( now() , 'A description. Made up of 3 semi long sentences. That I want to split, …

2
Соединение PostgreSQL с использованием JSONB
У меня есть этот SQL: CREATE TABLE test(id SERIAL PRIMARY KEY, data JSONB); INSERT INTO test(data) VALUES ('{"parent":null,"children":[2,3]}'), ('{"parent":1, "children":[4,5]}'), ('{"parent":1, "children":[]}'), ('{"parent":2, "children":[]}'), ('{"parent":2, "children":[]}'); Это дало бы: id | data ----+-------------------------------------- 1 | {"parent": null, "children": [2, 3]} 2 | {"parent": 1, "children": [4, 5]} 3 | {"parent": …

2
Одновременные вызовы одной и той же функции: как возникают тупики?
Моя функция new_customerвызывается веб-приложением несколько раз в секунду (но только один раз за сеанс). Самое первое, что он делает, это блокирует customerтаблицу (сделать «вставку, если не существует» - простой вариант upsert). Насколько я понимаю документы , другие вызовы new_customerдолжны просто стоять в очереди, пока все предыдущие вызовы не будут завершены: …

1
Индекс не используется с `= any ()`, но используется с `in`
Таблица tимеет два индекса: create table t (a int, b int); create type int_pair as (a int, b int); create index t_row_idx on t (((a,b)::int_pair)); create index t_a_b_idx on t (a,b); insert into t (a,b) select i, i from generate_series(1, 100000) g(i) ; Индекс не используется с anyоператором: explain analyze …

1
Ограничение уникальности с диапазоном дат
Рассмотрим pricesтаблицу с этими столбцами: id integer primary key product_id integer -- foreign key start_date date not null end_date date not null quantity integer price numeric Я бы хотел, чтобы база данных применяла правило, согласно которому продукт может иметь только одну цену на определенное количество в диапазоне дат (через where …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.