我正在与一个客户合作,该客户在 Oracle 中使用 1=1
启动几乎所有的 WHERE 子句。 .原谅我的无知,但这不是一个空操作吗?这种用法是否有任何负面影响?
这是一个擦洗的示例:
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
最佳答案
这样做是为了简化动态 SQL 生成。基本上每个条件都可以添加为AND <condition>
无需将第一个条件视为特殊条件(它前面是 WHERE
而不是 AND
),甚至不用担心是否应该有 WHERE
条款。
因此,只需将其写为易于使用,或者可以说是懒惰。
关于sql - 在 Oracle 中,使用 1=1 启动 SQL 查询的 WHERE 子句有用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1069373/