0

私はlaravelフレームワークバージョン3を使用しています.10人のアクティブユーザー(膨大な数の写真をアップロードしたユーザー)を獲得したいと思っています。私のテーブルの構造体: ユーザー:

id,username ..

画像:

id,user_id,views..

次に、彼らの写真のビューの合計を表示したい例: pic 1 のビューは: 150 pic 2 のビューは: 100 したがって、そのユーザーの合計は 250 になります。誰でもplzを助けることができますか?

4

1 に答える 1

0

SQL クエリは次のようになります。

SELECT
  COUNT(*) as numPics,
  SUM(p.views) as totalViews
FROM
  pics p
INNER JOIN
  users u
ON
  p.user_id = u.id
GROUP BY p.user_id
ORDER BY numPics DESC LIMIT 10

ただし、データの量にもよりますが、この種のリアルタイムでの集計を避け、キャッシュすることを強くお勧めします。

于 2013-04-12T16:49:40.540 に答える