如何过滤所有行的记录?
|
我正在设计一个SQL查询以从给定表中提取所有记录。但是,这里的窍门是这种逻辑基于数字数据库字段。因此,共有4个选择:0、1、2、3。如果用户选择0,1或2,那么我的查询将返回具有指定值的行。但是,如果他们选择3,则应该返回所有行。如何在SQL中执行此操作?我知道这是否是字符串,可以执行以下操作:
WHERE = CASE WHEN = 3然后\'%\'否则结束
但是在这种情况下,是整数。听起来相对简单,但我遇到了错误。
没有找到相关结果
已邀请:
3 个回复
氮顺
如果您对更好的优化感兴趣,则可以这样做,但它的维护性较差:
如果我被迫实现此功能,那么我可能会这样做,只是为了使事情变得清楚:
希望我永远不必实现以这种方式混合标志和数据值的系统。 更新 这是一个可以满足您扩展需求的版本(我认为这需要SQL Server的较新版本):
靛新比比催
其中@InputValue是发送到查询的参数的名称。
车料