SQL where 1=1 的详细解释


    http://www.cnblogs.com/qcq0703/p/9099199.html


    select * from user 
    

    
    select * from user where 1=1
    
    --这两个 句子执行结果是一样一样的。而sql注入就是利用了这个原理 来进行破坏。比如:
    
    select * from user where id='1000'
    
    --如果允许用户输入的话,那么这个句子就成了:
    select * from user where id='XXX' or 1=1
    --       这样的话,这个句子就是恒成立的了。
    --       上述1=1 的使用,会影响预先指定的查询结果,使得本来要查询的数据 失效。 
    --       where 1=1 这种写法 虽然给程序开发人员带来不便,还要避免sql注入的问题
    --       但 “1=1” 这种写法 --    --       也会给程序编写增加了方便。
    --       1=1 可以很方便的规范语句
    --       对于组合查询的来说,因为查询比较模糊,而查询的where条件的个数也不确定。
    
    ```
原文地址:https://www.cnblogs.com/imtudou/p/11251903.html