九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
SQL語句中的 where 1=1

就是條件永遠(yuǎn)為真,查出所有數(shù)據(jù)來

在組合查詢條件時候多用:

String sql="select * from user where 1=1 ";

if(username!=null) sql=sql+ " and username='"+username+"'";

if(password!=null) sql=sql+ " and password='"+password+"'";

這樣方便很多,及時username,password兩者都為空都可以查詢

永遠(yuǎn)為真

主要是為了便于動態(tài)連接后續(xù)條件

有時候想查看一下表的字段就
select * from UB where 1=2,表示false 1=1表示true

-------------------------------------------

package StringTest;

public class Where {

    /**
     * 我用于高級查詢情況下
     *
@param args
    
*/
    public static void main(String[] args) {
        Where s= new Where();
        s.print("13432134321", "www.cjfuture.cn");
        //null時,即為用戶沒有寫值
        s.print(null, "www.cjfuture.cn");
    }
    public void print(String mobile,String url){
        StringBuffer sb = new StringBuffer("select id from tab where 1 = 1 ");
        //如果沒有1=1,下面的判斷語句會比現(xiàn)在寫復(fù)雜
        if(mobile!=null){
            sb.append("and mobile = "+mobile);
        }
        if(url!=null){
            sb.append("and name = "+url);
        }
        System.out.println(sb.toString());
    }
   
    public void otherPrint(String mobile,String url){
        StringBuffer sb = new StringBuffer("select id from tab");
        //如果沒有1=1,下面的判斷語句會比現(xiàn)在寫復(fù)雜,where放在哪里合適?
        if(mobile!=null){
            sb.append("and mobile = "+mobile);
        }else{
            sb.append("");        //如何寫?
        }
        if(url!=null){
            sb.append("and name = "+url);
        }else{
            sb.append("");        //如何寫?
        }
        System.out.println(sb.toString());
    }
}

*******************************************************************

[轉(zhuǎn)]sql語句中where 1=1的作用
2008-08-27 09:22
where 1=1
最近看到很多sql里用到where 1=1,原來覺得這沒用嘛,但是又想到如果沒用為什么要寫呢?于是在網(wǎng)上

查了查,在這里就淺談一下:
1=1 永真, 1<>1 永假。

1<>1 的用處:
用于只取結(jié)構(gòu)不取數(shù)據(jù)的場合
例如:
create table table_temp tablespace tbs_temp as
select * from table_ori where 1<>1
建成一個與table_ori 結(jié)構(gòu)相同的表table_temp,但是不要table_ori 里的數(shù)據(jù)。(除了表結(jié)構(gòu),其它結(jié)

構(gòu)也同理)

1=1的用處
用于動態(tài)SQL
例如 lv_string := 'select tbl_name,tbl_desc from tbl_test where 1=1 '||l_condition;
當(dāng)用戶選擇了查詢的名稱'abc'時l_condition :='and tbl_name = ''abc'''';但是當(dāng)用戶沒有

選擇名稱查詢時l_condition就為空 這樣 lv_string = 'select tbl_name,tbl_desc from tbl_test

where 1=1 ' ,運(yùn)行也不會出錯,相當(dāng)于沒有限制名稱條件。但是如果沒有1=1的條件,則lv_string =

'select tbl_name,tbl_desc from tbl_test where ';這樣就會報(bào)錯。

除了1=1 或1<>1之外的其它永真永假的條件同理。

來源:http://hi.baidu.com/jzg7366/blog/item/e59dbaec8d33a5d42e2e210a.html

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
JAVA版微信支付V3-完全版
JDBC 讀取sqlserver2008所有用戶表的表結(jié)構(gòu)
數(shù)據(jù)庫訪問層的一種簡單設(shè)計(jì)與實(shí)現(xiàn)
源碼分析 Mybatis 的 foreach 為什么會出現(xiàn)性能問題
dataframe 數(shù)據(jù)統(tǒng)計(jì)可視化
hibernate實(shí)現(xiàn)多表聯(lián)合查詢
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服