postgresql - 存储月份的数据类型或约束

标签 postgresql validation date constraints

我有下表:

CREATE TABLE "MovieFees" (

"Id" serial8 NOT NULL,

"LocalizedMovieId" int8 NOT NULL,

"Fees" int8 NOT NULL CHECK ("Fees" > 0),

"Month" date NOT NULL,

PRIMARY KEY ("Id") ,

CONSTRAINT "LocalizedMovieIdMonthUniq" UNIQUE ("LocalizedMovieId", "Month")

);

这个表存储了一些电影每个月的利润数据。例如,

The Maze Runner|100$|2014-10-01
The Maze Runner|200$|2014-11-02
Lucy|400$|2014-10-02
Lucy|100$|2014-11-03
Lucy|200$|2014-11-07 -- this is a error!

我要,记录(电影名+月份名)是唯一的。但我想存储一个日期,而不是月份的名称或索引。可能吗?

最佳答案

我不确定这是否有效,但我会尝试:

CREATE UNIQUE INDEX unique_month on MovieFees (date_trunc('month', Month))

关于postgresql - 存储月份的数据类型或约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26127912/

相关文章:

R仅在列存在时验证数据

javascript - 表单未在 javascript 中验证

javascript - 重写 Javascript Date 构造函数?

date - 使用 SwiftDate 的日期之间的小时数

mysql - 如何在我的数据库中查询字段的时间戳值是最新的所有行?

node.js - 无法安装 node-postgres

postgresql - 如何在 PostgreSQL 中模拟死锁?

database - 如何在 Kubernetes Pod 中运行的 PostgreSQL 中启用流式复制?

java - Jersey 重用子资源参数验证

C++ - 如何获取特定时区的日期