0

適用された検索基準に基づいてレコードを取得しようとしています。一度に50行しか選択していません(Webページで使用されるテーブルのページネーション用)。しかしtotal、検索基準を満たす行数も必要です(表示1-50 out of <total> recordsなど)。

次のクエリでは、ユーザー ID ごとにグループ化されたレコードが表示されます。

select * from user 
group by userid
where name like '%hhh%' 
limit 50 offset 0

ここでは、基準を満たす最初の 50 件のレコードを取得しますが、検索結果の合計は 50 件を超える可能性があります。この合計数と他のクエリ結果が必要です。

4

3 に答える 3

2

別のクエリを使用します。

select count(*) from user
group by userid
where name like '%hhh%'

クエリははるかに高速になり、別の 50 行が選択されるたびに実行できます。その後、この実行時間の長いクエリを 1 回実行して、合計を取得できます。

于 2013-08-22T09:43:28.467 に答える