如何在 laravel QueryBuilder 中实现
How to make this in laravel QueryBuilder
我想获取 进度 列的最大值,该列以不同的列名排序。
例如;
进度 - journey_id
- 0 - 90
- 12 - 90
- 89 - 90
- 7 - 90
我尝试制作的代码,但我不能做更多
$impressions = DB::table('journey_content_impression')
->where('user_id', 11)
->where('journey_id',12)
->select('journey_item_id','progress')->distinct()->get();
最后,它应该给我们一行最大数。
此外,行的其他列应该像这样可用,
$impressions->first()->user_id; //
试试这个:
$impressions = DB::table('journey_content_impression')
->where('user_id',{id})
->where('journey_id',{j_id})
->groupBy('journey_item_id')
->get(['journey_item_id', DB::raw('MAX(progress) as progress')]);
也许它可以帮助你尝试这个
$impressions = DB::table('journey_content_impression')
->where([['user_id', 11],['journey_id',12]])
->select('journey_item_id','progress')->distinct()->get();
我想获取 进度 列的最大值,该列以不同的列名排序。
例如;
进度 - journey_id
- 0 - 90
- 12 - 90
- 89 - 90
- 7 - 90
我尝试制作的代码,但我不能做更多
$impressions = DB::table('journey_content_impression')
->where('user_id', 11)
->where('journey_id',12)
->select('journey_item_id','progress')->distinct()->get();
最后,它应该给我们一行最大数。 此外,行的其他列应该像这样可用,
$impressions->first()->user_id; //
试试这个:
$impressions = DB::table('journey_content_impression')
->where('user_id',{id})
->where('journey_id',{j_id})
->groupBy('journey_item_id')
->get(['journey_item_id', DB::raw('MAX(progress) as progress')]);
也许它可以帮助你尝试这个
$impressions = DB::table('journey_content_impression')
->where([['user_id', 11],['journey_id',12]])
->select('journey_item_id','progress')->distinct()->get();