sql语句中where 1=1和where 1= 0 的使用和区别

来源:互联网 发布:win10小键盘软件 编辑:程序博客网 时间:2024/04/30 04:38

“where 1 = 1”的用法主要是为了保证在多条件查询的情况下,sql语句能够正确的运行。

比如现有一条待后续拼接的查询语句“select * from table where ”,其中where后边的语句只有满足一定的判断条件才打印,

例如后边跟有代码:

if(判断条件) {

name = "+name+";

}

当判断条件为true时,上边的sql语句拼接为select * from table where name = “小明”;这时该语句能够正常执行。

但是当判断条件为false时,上边的sql语句就只能是select  * from table where;这样的语句会报语法错误。

因此,在where后边添加 1 = 1,可以有效避免该错误的发生。


“where 1 = 0”,永远是false,用于获取表的结构,不获取表中的数据。

例如:create table newtable as select * from oldtable where 1 = 0;//新建一个与oldtable的表结构相同的表newtable。


--本文参考junyuz的博客,地址是http://www.cnblogs.com/junyuz/archive/2011/03/10/1979646.html

0 0
原创粉丝点击