Sql server 追加Where/And的运行时决策

Sql server 追加Where/And的运行时决策,sql-server,dynamicquery,Sql Server,Dynamicquery,如果我将查询存储在如下表中: 1. 'SELECT * FROM dbo.MyTable' 2. 'SELECT * FROM dbo.MyTable Where car_id = 1' 有人可以建议我,我如何在两个查询中附加另一个过滤器 例:我需要这样的: 1. 'SELECT * FROM dbo.MyTable **Where foo_id = 10**' (with where) 2. 'SELECT * FROM dbo.MyTable Where car_id = 1 **and

如果我将查询存储在如下表中:

1. 'SELECT * FROM dbo.MyTable'
2. 'SELECT * FROM dbo.MyTable Where car_id = 1'
有人可以建议我,我如何在两个查询中附加另一个过滤器

例:我需要这样的:

1. 'SELECT * FROM dbo.MyTable **Where foo_id = 10**' (with where)
2. 'SELECT * FROM dbo.MyTable Where car_id = 1 **and foo_id = 10**' (with and as where already exist).

将其中1=1作为默认条件附加到查询中。这样,在所有情况下,你都有条件加入。@shahkalpesh:我同意。但是这些查询已经存在于数据库中,现在如果我想附加1=1,同样的问题也会出现。借助PATINDEX函数检查字符串是否包含“WHERE”,如果它不存在,您可以添加WHERE,否则。@shahkalpesh:我们有两种场景,您可以在内部查询中看到WHERE子句。例如:Select*from table1 Join Select Id,Table2中的值,其中statsusId=2在这种情况下失败。请参阅我之前关于使用PATINDEX的评论。