為什么要用where 1=1?


之前一直不太明白,sql語句里為什么要寫where 1=1 巴拉巴拉巴拉

提升某種執行效率?

其實,1=1 是永恆成立的,意思無條件的,也就是說在SQL語句中有沒有這個1=1都可以。

這個1=1常用於應用程序根據用戶選擇項的不同拼湊where條件時用的。

如:web界面查詢用戶的信息,where默認為1=1,這樣用戶即使不選擇任何條件,sql查詢也不會出錯。如果用戶選擇了姓名,那么where變成了where 1=1 and 姓名='用戶輸入的姓名',如果還選擇了其他的條件,就不斷在where 條件后追加 and語句就行了。

如果不用1=1的話,每加一個條件,都要判斷前面有沒有where 條件,如果沒有就寫where ...,有就寫and語句,因此此時用1=1可以簡化了應用程序的復雜度。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM