sql中的where 1=1有什么用?
生活随笔
收集整理的這篇文章主要介紹了
sql中的where 1=1有什么用?
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1=1 永真? ??? ?1<>1 永假
1=1常用于拼接動(dòng)態(tài)sql
String sql ?= ?select * from table1 where 1=1 ?; if(!a.equals("")){ sql=sql+"a='"+a+"'"; } if(!b.equals("")){ sql=sql+"b'"+b+"'"; } if(!c.equals("")){ sql=sql+"c='"+c+"'"; } if(!d.equals("")){ sql=sql+"d='"+d+"'"; }?
上述例子的四個(gè)參數(shù)都可能為空,?這時(shí)你要構(gòu)造語(yǔ)句的話,一個(gè)個(gè)檢測(cè)再寫語(yǔ)句就麻煩,用上 where 1=1 之后,就不存在這樣的問(wèn)題, 條件是 and 就直接and ,是or就直接接 or,如果不寫1=1呢,那么在每一個(gè)不為空的查詢條件面前,都必須判斷有沒(méi)有where字句。否則要在第一個(gè)出現(xiàn)的地方加where? 。
1<>1 的用處:?用于只取結(jié)構(gòu)不取數(shù)據(jù)的場(chǎng)合?
拷貝表?
create??table? table_name?? as?? select?? *?? from?? Source_table?? where?? 1=1;
復(fù)制表結(jié)構(gòu)?
create?table? ? table_name?? as?? select?? *?? from?? Source_table?? where?? 1 <> 1;?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的sql中的where 1=1有什么用?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 银行几点开门营业 银行具体营业时间
- 下一篇: 养老保险能退吗