sql:

where 1=1 
1=1 永真, 1<>1 永假。

1<>1 的用处: 
用于只取结构不取数据的场合 
例如:

拷贝表 
create   table_name   as   select   *   from   Source_table   where   1=1;

复制表结构 
create   table_name   as   select   *   from   Source_table   where   1 <> 1;

1=1的用处:
用于动态SQL

例如:

Stringbuffer sql="select * from a where 1=1

if(type!= null){

  sql.append("and type="+type")

}

if(name != null){

  sql.append(" and name="+name);

}

如果没有 where 1= 1;

Stringbuffer sql="select * from a

if(type!= null){

  sql.append("where type="+type");

}else{

}

if(name != null){

  sql.append(" and name="+name);

}

就需要很复杂的判断查询条件语句为不为空,处理where 这词。

随机推荐

  1. OpenStack中给wsgi程序写单元測试的方法

    在 OpenStack 中, 针对web应用, 有三种方法来写单元測试 1) 使用webob生成模拟的request from __future__ import print_function imp ...

  2. What is NetApp's Cluster File System?

    Data ONTAP GX: A Scalable Storage Cluster www.usenix.org/event/fast07/tech/full_papers/eisler/eisler ...

  3. 关于vi不正常退出产生的swp文件

    关于vi不正常退出产生的swp文件   非正常关闭vi编辑器时会生成一个.swp文件 关于swp文件 使用vi,经常可以看到swp这个文件,那这个文件是怎么产生的呢,当你打开一个文件,vi就会生成这么 ...

  4. 数据库的四种语言(DDL、DML、DCL、TCL)

    1.DDL (Data Definition Language )数据库定义语言 statements are used to define the database structure or sch ...

  5. Flashback Query(函数示例)

    Flashback Query 函数,存储过程,包,触发器等对象Flashback Drop 可以闪回与表相关联的对象, 如果是其他的对象,比如function,procedure,trigger等. ...

  6. 创建对象时引用的关键字,assign,copy,retain

    创建对象时引用的关键字:assign: 简单赋值,不更改索引计数(强引用)copy: 建立一个索引计数为1的对象,然后释放旧对象retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索 ...

  7. Windows10 磁盘活动时间百分之百导致系统卡顿解决方法

    最近电脑边的特别慢,打开任务管理器发现是磁盘活动时间时不时的就会变成100%.起初是以为硬盘出问题了,后来网上查了一下才发现很多人都遇到过这个问题,其原因就是Windows的SuperFetch和家庭 ...

  8. 几个makefile小例子

    http://www.blogjava.net/canvas/articles/quick_makefile.html http://www.cnblogs.com/azraelly/archive/ ...

  9. printf输出函数

    printf函数称为格式输出函数 格式: printf(const char *_Format,...) printf(“格式控制字符串”, 输出表列)其中格式控制字符串用于指定输出格式.格式控制串可 ...

  10. MVC Controller 与 View 传值

    Controller 到 View 1 强类型 控制器 // GET: /Test/ public ActionResult Index() { DateTime date = DateTime.No ...