如何在特定条件下创建唯一索引

时间:2019-11-29 18:18:15

标签: mysql sql mariadb

给他下面的表格(发票细节):

invoice_id| job_id
------------------
1         |  1
2         |  2
3         |  3 
3         |  3

我想添加一个规则/约束,以便表中的每个job_id必须始终具有相同的invoice_id。但是invoice_id可以具有不同的job_id,也可以有多个具有相同记录的记录(invoice_id,job_id)。

换句话说:我可以制作包含多个作业的发票,也可以制作包含多个相同作业的发票。但是此表中的给定作业必须始终具有相同的invoice_id。

有什么办法可以在Mysql中创建这样的约束?我正在使用MariaDB 10.1

1 个答案:

答案 0 :(得分:1)

这个评论太长了。

您可以通过在 invoice_id 表中的jobs列来完成此操作。

然后,您将为每个invoice_id查找唯一的job

此信息不适用于此表。它无法正确建立关系模型。