本文介绍了yii2 ActiveRecord 使用计算查找 OrderBy的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
试图从我的数据库中获取描述.查询返回结果,但我想将结果排序为只显示投票最高的那个.
Trying to fetch a description from my database.The query returns the result but I would like to order the result to only show the one with the highest vote.
投票应该由upvoted
列减去downvoted
列
$description = UnitDescription::find()
->where(['id_unit' => $model->id])
->orderBy([
'upvoted - downvoted' => SORT_DESC //Need this line to be fixed
])
->one();
我希望有人可以编写查询的这一部分 - 谢谢
I was hoping someone might have a way to write this part of the query - Thanks
推荐答案
你应该简单地尝试:
$description = UnitDescription::find()
->where(['id_unit' => $model->id])
->orderBy(['(upvoted - downvoted)' => SORT_DESC])
->one();
这篇关于yii2 ActiveRecord 使用计算查找 OrderBy的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!