我一直在考虑这个问题已经足够长的时间但却无法想出令人满意的东西。希望有人可以帮助我。
我正在编写一个接受大量输入(字符串,数字和关系)的数据输入(数据库)程序。该程序的目标是获取所有输入并根据条件列表运行它们,如果条件为真,它将返回一组输出(项目ID),这些输出将进入最终报告。
我当前的实现是这样的(简化):我有一个“Trigger”表,其中包含以下列:
1.ITEM_SET(例如001; 105; 112)
2.TABLE(例如[Dimension] INNER JOIN [产品] ON [id])
3.CONDITION(例如[Dimension]。[width]> 20 AND [Product]。[color] =“Red”)
然后我会去
triggers = SELECT * FROM Trigger
foreach(trigger in Triggers)
{
items = SELECT trigger.ITEM_SET FROM trigger.TABLE WHERE trigger.CONDITION
if(have items) report.items.add(items)
}
进入每个(几乎5000个)条件肯定是一种痛苦......我正在寻找一种更简单的方法来做到这一点,以便用户自己可以轻松扩展。有什么想法吗?