Описание тега exclusion-constraint
Ограничение исключения - это особый тип ограничения для PostgreSQL. По сути, это обобщение ограничения уникальности, которое позволяет дать более детальное определение "уникальности". Это можно использовать, например, для определения ограничений, предотвращающих перекрытие диапазонов дат.
1
ответ
Postgresql Исключение с мягко удаленными строками
Я пытаюсь выполнить ограничение PostgreSQL на следующую таблицу: CREATE TABLE contracts ( id bigint NOT NULL, startdate date NOT NULL, enddate date NOT NULL, price numeric(19,2) NOT NULL, deleted boolean NOT NULL, supplier_id bigint NOT NULL, ) Соде…
22 янв '19 в 10:02
3
ответа
Предотвращение смежных / перекрывающихся записей с помощью EXCLUDE в PostgreSQL
Я создаю базу данных, которая хранит произвольные диапазоны даты / времени в PostgreSQL 9.2.4. Я хочу наложить на эту базу данных ограничение, которое заставляет диапазоны даты / времени быть не перекрывающимися и не смежными (поскольку два смежных …
21 окт '13 в 21:06
1
ответ
Невозможно добавить ограничение исключения в таблицу
Я не могу создать исключающий индекс с этой схемой. create table foo_bar( foo_id text primary key, bar char(3) not null, created_at timestamptz not null default current_timestamp, system_period tstzrange not null default tstzrange(current_timestamp,…
28 ноя '18 в 22:16
1
ответ
Что означает ограничение исключения `EXCLUDE USING gist (c WITH &&) '?
Из документа PostgreSQL Ограничения исключения гарантируют, что, если любые две строки сравниваются в указанных столбцах или выражениях с использованием указанных операторов, по крайней мере одно из этих сравнений операторов вернет false или null. С…
09 июл '18 в 13:43
1
ответ
Исключить ограничение для многих таблиц?
Рассмотрим следующую таблицу: todos: id | floor_start | floor_end ----+-------------+------------- 1 | 10 | 20 2 | 20 | 30 3 | 30 | 40 4 | 35 | 45 чтобы предотвратить 2 лифта на одном этаже, я могу пойти с: EXCLUDE USING gist(int4range(start,end) wi…
15 мар '19 в 07:12
1
ответ
Запретить перекрывающиеся значения в столбце CIDR в PostgreSQL
Существует ли ограничение или какая-либо другая функция PostgreSQL, которая не позволяет столбцам CIDR иметь перекрывающиеся значения? Например: 192.168.1.0/24 а также 192.168.1.1/32 Они не могут существовать вместе, потому что 192.168.1.1/32 содерж…
21 мар '19 в 15:19
1
ответ
Ограничение исключения, позволяющее перекрывать границы
Я попытался установить ограничение PostgreSQL, чтобы не было совпадений между двумя интервалами дат. Мое требование заключается в том, что дата c_from за одну запись может быть таким же, как c_until на другую дату. Например: "12/12/2019 12/12/2019" …
05 апр '19 в 19:20
1
ответ
Ограничение Postgresql EXCLUDE не вызывает ON CONFLICT при вставке
Я определил эту таблицу: CREATE TABLE market.price_history ( item_id bigint NOT NULL, valid_time tstzrange DEFAULT tstzrange(now(), 'infinity'), sale_price money NOT NULL, promo_code bool NOT NULL DEFAULT false, EXCLUDE USING gist(item_id WITH =, va…
16 апр '19 в 18:13
1
ответ
Как использовать ON CONFLICT с ограничением исключения?
Например : индекс по userid, sdate, edate userid sdate edate 001 2019-01-01 2019-01-30 если я вставлю новые данные, такие как: userid sdate edate 001 2019-01-03 2019-01-20 or 001 2019-01-13 2019-02-10 or 001 2019-02-01 2019-02-15 Я попробовал ниже, …
30 апр '19 в 10:52
4
ответа
Рекурсивный SQL-запрос с диапазонами Postgres для определения доступности
Я следил за этим сообщением в блоге: https://info.crunchydata.com/blog/range-types-recursion-how-to-search-availability-with-postgresql CREATE TABLE travels ( id serial PRIMARY KEY, travel_dates daterange NOT NULL, EXCLUDE USING spgist (travel_dates…
18 фев '20 в 08:56
1
ответ
Postgres: лучший способ избежать перекрытия диапазонов с другими условиями
Упрощенная таблица соединений MN CREATE TABLE dummy ( fkey1 int, /* omitting FK clause */ fkey2 int, /* could also separate begin and end dates */ effective_dates_of_assignment daterange, EXCLUDE /* WHAT GOES HERE?? */ ) Я хочу очевидное правило иск…
15 июн '20 в 18:48
1
ответ
Ограничения исключения PostgreSQL в битемпоральной настройке?
В настоящее время я работаю с битемпоральным приложением, которое хранит записи данных с использованием 4 временных меток: Valid_from, Valid_to Registration_from, Registration_to Первые два состояния, когда данная запись valid_from а также valid_to,…
02 июл '20 в 22:23
1
ответ
Ограничение количества строк таблицы, соответствующих определенному условию, с использованием ограничения исключения Postgres?
Если у меня есть схема базы данных Postgresql для такой таблицы шин (у пользователя много шин): user_id integer description text size integer color text created_at timestamp и я хочу ввести ограничение, которое гласит, что "у пользователя может быть…
06 мар '20 в 01:03
1
ответ
Как обеспечить записи с неперекрывающимися временными диапазонами?
Мне нужно убедиться, что моя база данных содержит только записи, в которых два или более столбца уникальны. Этого легко добиться с помощьюUNIQUE ограничение на эти столбцы. В моем случае мне нужно запретить дублирование только для перекрывающихся вр…
10 май '20 в 20:31
2
ответа
Как получить уникальные значения из 2 столбцов в PostgreSQL
У меня есть столбец "id_a" и столбец "id_b". "id_a" - это целочисленный [] тип. "id_b" - это тип int. Мне нужно найти способ проверить, что больше нет значений id_a с тем же id_b For Example: id_a {3,4,5} id_b 18 Другие примеры: ERROR: id_a{3,4,5} i…
06 ноя '20 в 11:55
1
ответ
Что такое ограничение исключения в PostgreSQL? Каков соответствующий термин (и образец сценария SQL) в Microsoft SQL Server?
Я читаю книгу Ограничение исключения CREATE TABLE movies ( Title TEXT, Copies INTEGER ); ALTER TABLE movies ADD EXCLUDE (title WITH=, copies WITH=); В чем смысл ограничений исключения? Каков соответствующий термин (и образец сценария SQL) в Microsof…
24 окт '20 в 03:26
1
ответ
Как наложить это ограничение исключения?
У меня есть таблица "ключ-значение". CREATE TABLE keyvalues ( key TEXT NOT NULL, value TEXT ) Я хочу наложить ограничение: если в ключе есть запись со значением NULL, у него не может быть других записей. Как я могу это сделать? Чтобы уточнить: я хоч…
18 фев '21 в 21:21
1
ответ
Ограничение исключения Django Postgres с ManyToManyField
Я хотел бы использовать ограничение исключения Django с ManyToManyField. К сожалению, пока мои усилия были тщетными. Это моя модель назначения: из django.contrib.postgres.constraints импорт ExclusionConstraint из django.contrib.postgres.fields импор…
19 мар '21 в 03:21
2
ответа
Ограничение исключения Postgres при вставке / обновлении
У меня есть такая таблица Table "public.foo" Column | Type | Collation | Nullable | Default ----------+---------+-----------+----------+------------------------------------- foo_id | integer | | not null | nextval('foo_foo_id_seq'::regclass) bar_id …
13 апр '21 в 21:48
0
ответов
Условное ограничение UNIQUE для таблицы? [дубликат]
У меня есть такая таблица: CREATE TABLE mitg.tbl_gch_customers ( pe character varying(10)NOT NULL, name character varying NOT NULL, city character varying, address character varying NOT NULL, state character varying, zip character varying , country …
10 май '21 в 04:11