5
テーブルから最後のレコード(つまり、MAX(id)
)を選択する方法はありますか?
次のステートメントは、[OK]を動作しますが、最初のレコードを選択:あなたが一つに逆順と制限を適用することができ、最大id
でモデルを取得するにはテーブルの最後のレコードを選択
$statistics = SystemStatisticsHistory::findOne(1);
テーブルから最後のレコード(つまり、MAX(id)
)を選択する方法はありますか?
次のステートメントは、[OK]を動作しますが、最初のレコードを選択:あなたが一つに逆順と制限を適用することができ、最大id
でモデルを取得するにはテーブルの最後のレコードを選択
$statistics = SystemStatisticsHistory::findOne(1);
を。
SystemStatisticsHistory::find()->orderBy(['id' => SORT_DESC])->one();
別のオプションはそうのようなmax
で副選択を使用することです:
SystemStatisticsHistory::find()
->where(['id' => SystemStatisticsHistory::find()->max('id')])
->one();
最後のオプションを使用して、いくつかのニュアンスがありますが、this questionを確認してください。
max()
hereのドキュメントを参照してください。
私は個人的に最初のバリエーションを使用します。
最初のレコードを取得するには、最初のクエリではSORT_ASC
、2番目のクエリではmax()
~に変更してください。
P.S.ハードコードid
は悪い習慣です。
ありがとうございました!できます! – MaksimK
喜んで助けてください。この場合、回答を受け入れたものとしてマークしてください。 – arogachev