数据库表中有很多行数据,每行包含很多列。ID(数字 - 12345、12378 等) 名称 1 - AAA、BBB、CCC 名称 2 - dd、ee、ff 名称 3 - Ggg、Hhh、Iii
目标是根据这些值的组合提出规则以映射到一组组。组 ID 1 - 1,000
有一个大型映射表将规则应用于各个记录并将每个记录映射到它的组 ID。代码是意大利面条,有差距和重复,如果你能推荐一个更好的方法,我想要一个更好的方法。
这是一个小例子:
如果在 (...) 中命名 1,则使用以下过程:
如果 ID = 856743 那么组 ID = 2000
if ID in (1,2,3... 200) THEN Group ID = 2001
if ID = 377 OR Name 2 in (X,Y,Z) THEN Group ID = 2003
如果 (U, V, W) 中的名称 2 THEN 组 ID = 2007
其他组 ID = 2011
我在想我需要采用所有列排列并将它们设为维度。问题是有很多这样的映射段: 如果列值在 (X,Y,Z) 中并且 ID 是(一个大集合)之一,那么该值是......
有时会添加更多的 ID,谁知道是否添加了新的列值。
我是否应该只列出一个映射表:ID、每个维度以及 Group ID 是什么?这将需要在添加新 ID 时添加新的映射行。当前进程有时会自动处理该问题,因为它只需要匹配名称 1 和名称 2 的记录,
ID N1 N2 组 ID 1 1 1 10 2 1 1 11 2 1 2 12
- 2 1 13
- 2 2 14
想法?