首页 > 解决方案 > Laravel 查询以获取列上的不同值,但在使用 orderby 获取最新的不同值之后

问题描述

我只想显示表中不同的行,但这些值必须是最新的,我从表中的日期过滤。这是我的查询。我得到的结果是从日期开始的旧行,我猜 orderby 在这里不起作用。请帮忙。我附上了我的桌子。

$reports= DB::table('resident_assessment')
          -where('resident_assessment.assessment_date','<=',$date)
          -join('assessment_entry','resident_assessment.assessment_id','=','assessment_entry.assessment_id')
          -orderby('resident_assessment.assessment_date','desc')
          -distinct()->get();

在此处输入图像描述

标签: mysqlsqllaravel-5

解决方案


SELECT DISTINCT RA.* FROM resident_assessment RA INNER JOIN assessment_entry AE ON 
AE.assessment_id = RA.assessment_id
WHERE RA.assessment_date = $date ORDER BY RA.assessment_date desc 

这是适合您的任务的选择语句。这可能会帮助你


推荐阅读