5
如何从表中选择最后一条记录(即有MAX(id)
)?
Next语句工作确定,但选择的第一个记录:选择表中的最后一条记录
$statistics = SystemStatisticsHistory::findOne(1);
如何从表中选择最后一条记录(即有MAX(id)
)?
Next语句工作确定,但选择的第一个记录:选择表中的最后一条记录
$statistics = SystemStatisticsHistory::findOne(1);
要获得最大id
模型可以应用相反的顺序和限制之一。
SystemStatisticsHistory::find()->orderBy(['id' => SORT_DESC])->one();
另一种选择是使用子查询与max
像这样:
SystemStatisticsHistory::find()
->where(['id' => SystemStatisticsHistory::find()->max('id')])
->one();
有一些细微使用最后一个选项,检查this question。
您可以检查文档max()
here。
我个人更喜欢使用第一种变体。
要获得第一条记录,只需在第一个查询中将订单方向更改为SORT_ASC
,将第二个查询中的max()
更改为min()
。
P.S.硬编码id
是一个不好的做法。
谢谢!有用! – MaksimK
很高兴帮助。在这种情况下将答案标记为已接受。 – arogachev