SQL中where 1=1 和 where 1=0 使用方法以及权限控制

1,231 阅读1分钟

where 1=1

这种形式的SQL常出现在SQL语句拼接的情况中。 这种情况会是的在用户使用查询条件为空时,SQL语句也可正常使用运行。 例如:

select * from table 
where 1=1
and name = "{name}"

若不适用where 1=1 则SQL语句变成

select * from table

没有条件不可执行

where 1=0

意图返回表结构,不会返回数据

也可通过上述方式进行权限控制是否成立。

where (1=0 #uers1#)

若满足条件则有权限,否则不能进行条件判断,无法继续进行。