<?php
// 子查询
ServerNotice::query()
->select('*')
->whereRaw('(SELECT COUNT(*) FROM xb_server_notice AS sn WHERE xb_server_notice.zone_id = sn.zone_id AND xb_server_notice.updated_at < sn.updated_at) < 2')
->orderBy('zone_id')
->orderByDesc('updated_at')
->get()
->dd();
// 左链接
ServerNotice::query()
->select('server_notice.*')
->leftJoin('server_notice as b', function ($join){
$join->on('server_notice.zone_id', '=', 'b.zone_id')
->on('server_notice.updated_at', '<', 'b.updated_at');
})
->groupBy('server_notice.id')
->havingRaw('COUNT(*) < 2')
->orderBy('server_notice.zone_id')
->orderByDesc('server_notice.updated_at')
->get()
->dd();
Last active
December 15, 2022 07:55
-
-
Save guanguans/55afcfcda33bc3c14f6bc13f5b1bf8a1 to your computer and use it in GitHub Desktop.
groupByTopN
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment