laravel - 对对象 mongodb laravel 中的数组进行排序
问题描述
我有这个对象,我想通过它 created_at 对 Demo2 进行排序。我正在使用 mongodb 作为 db laravel php
Demo": {
"Demo2": [
{
"type": "review",
"created_at": "1970-01-01 05:30:00"
},
{
"type": "store",
"created_at": "2019-04-16 6:22:30"
},
{
"type": "postw",
"created_at": "2019-04-16 16:23:10"
}
],
}
我如何通过 laravel mongodb 查询来实现这一点。
解决方案
您需要使用聚合框架来完成这项工作
db.test.aggregate( [ { $unwind: "$Demo.Demo2" }, { $sort: { 'Demo.Demo2.created_at': -1}}, {$group : {"_id": "1", "Demo2": {"$push": "$Demo.Demo2"}}} ] )
推荐阅读
- dart - IOS状态栏点击无法滚动到顶部
- c# - 我怎样才能简化这条长长的条件语句链?
- r - R visNetwork:如何将标签设置为粗体并增加标签周围的边距
- python-3.x - Python pandas read_csv 用于列中的特定记录
- mysql - 在没有会话变量的情况下对 MySQL 中的分组数据进行排序?
- java - 在android上使用AnsycTask登录时出现问题
- c# - Smartsheet API C#按列中的数据过滤行
- reactjs - 部署的 React 应用程序与本地版本不一样
- php - 在为每个文件完成 jquery formdata 后隐藏加载器
- c++ - 抑制 Eclipse/CDT 中的“未解决的包含”警告?