<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          年輕人不講武德,where 1=1 是什么鬼?

          共 1180字,需瀏覽 3分鐘

           ·

          2021-01-07 10:41

          點(diǎn)擊上方?好好學(xué)java?,選擇?星標(biāo)?公眾號

          重磅資訊、干貨,第一時間送達(dá)

          今日推薦:硬剛一周,3W字總結(jié),一年的經(jīng)驗(yàn)告訴你如何準(zhǔn)備校招!

          個人原創(chuàng)100W+訪問量博客:點(diǎn)擊前往,查看更多

          這段代碼應(yīng)該是由程序(例如Java)中生成的,where條件中 1=1 之后的條件是通過 if 塊動態(tài)變化的。例如:

          String?sql="select?*?from?table_name?where?1=1";??
          ??
          if(?conditon?1)?{??
          ??
          ??sql=sql+"??and??var2=value2";??
          ??
          }??
          ??
          if(conditon?2)?{??
          ??
          ??sql=sql+"??and?var3=value3";??
          ??
          }??
          ?

          where 1=1 是為了避免where 關(guān)鍵字后面的第一個詞直接就是 “and”而導(dǎo)致語法錯誤。

          動態(tài)SQL中連接AND條件

          where 1=1 是為了避免where 關(guān)鍵字后面的第一個詞直接就是 “and”而導(dǎo)致語法錯誤。

          where后面總要有語句,加上了1=1后就可以保證語法不會出錯!

          select * from table where 1=1

          因?yàn)閠able中根本就沒有名稱為1的字段,所以該SQL等效于select * from table,

          這個SQL語句很明顯是全表掃描,需要大量的IO操作,數(shù)據(jù)量越大越慢,

          建議查詢時增加必輸項(xiàng),即where 1=1后面追加一些常用的必選條件,并且將這些必選條件建立適當(dāng)?shù)乃饕?,效率會大大提?/p>

          「拷貝表」

          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;

          作者:三哥
          來源:cloud.tencent.com/developer/article/1475146

          推薦文章

          原創(chuàng)電子書

          歷時整整一年總結(jié)的?Java 面試 + Java 后端技術(shù)學(xué)習(xí)指南,這是本人這幾年及校招的總結(jié),各種高頻面試題已經(jīng)全部進(jìn)行總結(jié),按照章節(jié)復(fù)習(xí)即可,已經(jīng)拿到了大廠offer。

          原創(chuàng)思維導(dǎo)圖

          掃碼或者微信搜?程序員的技術(shù)圈子?回復(fù)?面試?領(lǐng)取原創(chuàng)電子書和思維導(dǎo)圖。


          瀏覽 72
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产精品无码在线 | 黄视频免费大全 | 全部孕妇丰满孕妇孕交 | 国产成人黄色毛片不卡在线看 | 91性爱视频在线观看 |