Bootstrap

关于sql的where 1=1 和 where 1<>1

  • 在sql中1=1代表一个永真条件,大多用在动态查询中,例如:
String sql = "select * from table_name where 1=1";
if(true){
sql = sql + "and name like '%'";
}
if(false){
sql = sql + "and name like '%11'";
}
//防止出现sql语句直接与and相连接。
//所以加上"select * from table_name"
  • 在where<>1表示永假,通常用来取出表结构而不动表
# 想在不添加条件时查不到,添加条件时,展示出符合任何条件的所有数据
# 1<>1 才是应该添加的
select * from table where 1<>1 union 条件
#还可以用在仅拷贝表结构,不动表数据时使用
create table table_name tablespace tbs_temp
 as select * from table_ori where 1<>1
;