表中的字段可以具有任意字符串。在用户界面上,有一个下拉列表,其中包含如下选项
全部,值1,值2
根据所选选项值筛选结果。到目前为止,这很容易,向UI添加新的过滤器也不是问题。不需要更改存储过程。现在我想在这里也有一个“其他”选项,它将返回列值不为value1或value2的行。
显然,这在我的查询中需要一个“not in”操作符,并且会使维护变得困难,因为值列表可能会更改。
有什么建议,设计提示吗?
如果您的选项表可以有一个名为isother的额外列,那么您的查询可能只是在isother=1的位置,而不是使用not-in。
为创建单独的存储过程 others 大小写并在所选选项为 其他 . 将列表的内容作为输入传递给过程:这样,您只需要在一个地方更新列表。
others