亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Yii2 Active Record 其中 % 模數

Yii2 Active Record 其中 % 模數

PHP
倚天杖 2023-07-30 13:19:39
在 SQL 中,我可以選擇 id 可被 4 整除的記錄:SELECT?id?FROM?table_name?WHERE?id%4?=?0;我嘗試在 Yii2 活動記錄中執行此操作,但失敗并出現錯誤:$model?=?Verses::find()->where(['%4','id',0])->orderBy('id')->all();有沒有關于此的任何方法或文檔提示?
查看完整描述

3 回答

?
搖曳的薔薇

TA貢獻1793條經驗 獲得超6個贊

您也可以這樣做:

$model = Verses::find()->where(['(id % 4)' => 0])->orderBy('id')->all();

錯誤顯示,Unknown column 'id%4'為了將其表達為數學表達式,我們將其括在括號中并將其添加到查詢中。


查看完整回答
反對 回復 2023-07-30
?
蠱毒傳說

TA貢獻1895條經驗 獲得超3個贊

最安全的方法是使用Expression

$model?=?Verses::find()->where(new?Expression('id%4?=?0'))->orderBy('id')->all();

雖然添加括號->where(['(id % 4)' => 0])可能有效,但這種行為在最新版本的 Yii 中幾乎被刪除了,所以我不會太依賴它。


查看完整回答
反對 回復 2023-07-30
?
守候你守候我

TA貢獻1802條經驗 獲得超10個贊

我通過嘗試和錯誤找到了解決方案:

$model = Verses::find()->where(['%4=','id',0])->orderBy('id')->all();

換句話說,=符號應該連接到模運算,即%4=。


查看完整回答
反對 回復 2023-07-30
  • 3 回答
  • 0 關注
  • 154 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號