0

我有 3 张桌子:Persons, Variables, Person_Data.

Person_Data表中包含不同人的各种变量的数值数据。列是:variable_valueperson_id(到 的外键Persons)和variable_id(到 的外键Variables)。

一些变量相互关联(例如:收入、家庭规模和人均收入)。我想创建一个Variable_Relationship表来存储此类信息并执行数据完整性检查。表中的一列将是Dependant_Variable_Id(关系的 LHS)。

  1. 问题是 RHS 变量的数量不是固定的,数学表达式也不是固定的。
  2. 有没有办法很好地实现这一点?

现在我正在考虑一个relationship_definition文本列以及另一个具有列Relationship_IdRHS_VariableId表。

4

1 回答 1

0

在我看来,没有办法在 SQL 中管理它,因为您无法解释以列值表示的动态公式。根据您用于访问数据库数据的语言,您应该开发一个表达式解析器(您可以搜索大量提供此类功能的开源库)并使用它来解析从 RHS 列读取的表达式,评估它们并执行完整性检查。

于 2012-12-29T07:47:21.663 回答