【发布时间】:2012-08-20 01:35:36
【问题描述】:
我有这张桌子:
id | product_group_id | percentage
1 | 1 | 0.2
2 | 1 | 0.3
3 | 1 | 0.5
4 | 2 | 0.4
5 | 2 | 0.6
我想知道是否有一种方法可以创建每个 product_group_id 的百分比等于 1 的约束(如果 product_group_id = 1 所以 0.2 + 0.3 + 0.5 = 1)。
例如,如果我将 id = 2 的百分比更改为 0.8 或 0.1,则更新(或插入)将失败,因为总和不是 1。
提前致谢。
【问题讨论】:
-
如果一个产品有1/3呢?这个数字以百分比表示时会四舍五入,因此不可能达到 1。
-
@Andre 你是什么意思?
-
@Offer 你将不得不处理舍入错误。
-
您使用的是什么数据库?创建与此表关联的触发器以检查约束。
-
如何在组中添加第一行?
标签: sql oracle constraints oracle-sqldeveloper