我有一个 mongo数据库,我尝试编写一个 Eloquent 代码来更改某些字段,然后再在WHERE或ORDER BY子句中使用它们。像这样的SQL查询:
Select ag.*, ht.*
from agency as ag inner join hotel as ht on ag.hotel_id = ht.id
Where ht.title = 'OrangeHotel'
- 或 -
Select ag.*, ht.*
from agency as ag inner join hotel as ht on ag.hotel_id = ht.id
Order by ht.title
有时没有其他表,我只需要在Where或Order By子句中使用计算字段:
Select *
from agency
Where func(agency_admin) = 'testAdmin'
Select *
from agency
Order by func(agency_admin)
其中func()是我的自定义函数。
任何建议?
我已经阅读Laravel 4/5, order by a foreign column了解我的一半问题,但我不知道如何使用它。
答案 0 :(得分:0)
对于第一个查询:mongodb仅支持"加入"部分使用aggregation pipeline
,这限制了您在一个集合中的聚合。对于"在不同的集合/表之间加入,只需逐个选择集合,首先是包含"其中"那个应该"加入"与前者一样,等等。
第二个问题让我困惑了几分钟,直到我看到this question并意识到它与你的第一个问题相同:对包含你的排序字段的集合进行排序并检索一些数据,然后转到另一个。
对于第3个问题,this question应该为您服务。