【发布时间】:2016-06-27 17:37:56
【问题描述】:
我需要一个 Laravel 查询,它返回最近创建的各种 site_id 行。目前,我有这个查询:
Score::whereIn('site_id', $sites)->where('type', 2)->select('score')->get();
但它会返回网站的所有分数,其中 type = 2。
目前$sites数组只包含1,2,所以会排除3和4的site_id。
数据库结构:
查询返回的预期结果将是以下行:
ID: 1, 2. - 它们是数组中最近创建的 ID 行。
更新:
如果我使用:
Score::whereIn('site_id', $sites)->where('type', 2)
->select('score')
->groupBy('site_id')
->get();
groupBy 方法,它返回我想要的两个分数,但我不确定它为什么会返回它们?我以为它只会按 site_id 对网站的所有分数进行分组?
感谢您的帮助。
【问题讨论】:
标签: php arrays laravel eloquent laravel-5.2