thinkphp中的exp查詢


今天遇到一個問題,就是在vendor表中查詢出vendor_id = vendor_f_id的數據,其實使用原生的sql語句是非常簡單的:

select * from  vendor where vendor_id = vendor_f_id

但是,在thinkphp中為了代碼的簡潔以及通用性,不考慮使用原生的方式進行sql的查詢,而是采用查詢map的方式進行查詢

$condition[ 'vendor_f_id' ] = 'vendor_id';

但是,thinkphp在處理上述條件的時候,將其轉化為了以下代碼:

select * from vendor where vendor_f_id = 'vendor_id'

也就是說,vendor_id被當成了一個字符串進行處理了

解決上述問題的辦法是:

$condition[ 'vendor_f_id' ] = [ 'exp' , ' = vendor_id ' ]

  

 


免責聲明!

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



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