2010-11-01 52 views
2

可能重复:
Why would someone use WHERE 1=1 AND <conditions> in a SQL clause?'WHERE 1 = 1' SQL存储过程

我一直在负责审查一些SQL存储过程和看到许多看起来像如下:

SELECT 
    X, Y, Z 
FROM 
    Table 
WHERE 
    1 = 1 
ORDER BY 
    X 

为什么有人会在where子句中使用'1 = 1'?

谢谢!

+2

可能的重复:http://stackoverflow.com/questions/242822/why-would-someone-use-where-and-conditions-in-a-sql-clause – steinar 2010-11-01 02:04:34

+0

@steinar - 谢谢。我确实尝试了一些搜索,但没有运气。这是一个骗局。 – derivation 2010-11-01 02:07:48

回答

7

它在动态SQL中很常见,以便将附加条件附加到WHERE子句。否则,它是无用的,它被优化器忽略。

2

可能为where子句动态添加条件。