Php 如何从yii2中的db获取上个月的最后一个条目?

Php 如何从yii2中的db获取上个月的最后一个条目?,php,yii2,Php,Yii2,我有一个表attendace,它的出勤日期不同。现在我想获取上个月最后一个条目的出勤情况。我使用了以下方法: $attt = Attendance::find() ->select('daytime') ->orderBy(['daytime' => SORT_DESC]) ->one(); 获取上个月的最后一个条目,但它不提供上个月的最后一个条目。我的表格是请尝试设置 $yourMonth = date('m') -1; $attt = Att

我有一个表
attendace
,它的出勤日期不同。现在我想获取上个月最后一个条目的出勤情况。我使用了以下方法:

$attt = Attendance::find()
    ->select('daytime')
    ->orderBy(['daytime' => SORT_DESC])
    ->one();
获取上个月的最后一个条目,但它不提供上个月的最后一个条目。我的表格是

请尝试设置

$yourMonth = date('m') -1;
$attt = Attendance::find()->select('daytime')
->where(" MONTH( my_date_field) = $yourMonth ")
->orderBy(['daytime'=>SORT_DESC])->one();

但是我没有设置固定值。我希望随着月份的变化,它会取上个月的最后一个条目。我尝试使用上面的代码,得到错误
SQLSTATE[42000]:语法错误或访问冲突:1305函数yii_attention.DATEPART不存在正在执行的SQL是:从
attention
WHERE DATEPART(month,my_date_字段)=8 ORDER BY
daily
DESC`error:
SQLSTATE[42000]:语法错误或访问冲突:1064您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解在第1行“my_date_field)=8 ORDER BY Daily DESC”附近使用的正确语法正在执行的SQL是:从考勤中选择Daily,其中MONTH(my_date_field)my_date_field)=8 ORDER BY Daily DESC