我正在使用一个客户端,它在Oracle中启动了几乎所有的WHERE子句1=1.原谅我的无知,但这不是一个无操作吗?这种用法有任何负面影响吗?
这是一个擦洗的例子:
SELECT gpz.zname
,gpp.pname
FROM table1 gpp INNER JOIN table2 gpz ON gpz.p_id = gpp.p_id
WHERE 1=1
AND gpp.active = 1
AND gpz.active = 1
Run Code Online (Sandbox Code Playgroud)
cle*_*tus 19
这样做是为了简化动态SQL生成.基本上每个条件都可以添加为AND <condition>不将第一个条件视为特殊条件(它之前WHERE没有AND),或者甚至担心是否应该有一个WHERE条款.
所以把它写成易于使用或可以说是懒惰.