Розглянемо 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 <date> BETWEEN start_date AND end_date
).
Чи можливе таке обмеження на основі діапазону?
daterange
це саме так, оскільки це ексклюзивна нижня межа, але це легко виправити. Чи слід реально мігрувати свої дані, щоб використовуватиdaterange
тип стовпця (можна зробити це окремим питанням, якщо це краще) або це розумне питання щодо двох стовпців?