プロジェクトのmysqlクエリを作成する必要がありますが、これはスコープに対して少し複雑すぎます...
だから、私はメタデータ列と一緒に、idとtimestamp列を持つ画像のテーブル
「loves」のテーブルもあります。このテーブルには、id、imageid、userid、timestampの列があります。
(ここではユーザーIDはそれほど重要ではありません)
現在、LEFT JOINを使用して、いいねの総数で画像を並べ替えています
代わりに、私が今やりたいのは、画像を1日の平均のいいねで並べ替えることです。
したがって、5つのいいねが関連付けられている今日作成された画像は、20のいいねが関連付けられている5日前に作成された画像の前に来る必要があります。
これにどのようにアプローチし始めるかさえわかりませんが、SQLの達人の誰かが何かアイデアを持っていますか?乾杯。
編集:
このクエリを使用する
SELECT images.*,
COUNT(loves.id) AS num_loves
FROM images
JOIN loves ON (images.id = loves.imageid)
GROUP BY images.id
ORDER BY num_loves/DATEDIFF(images.timestamp,CURDATE())
DESC LIMIT 0 , 24
このエラーが発生する
Reference 'num_loves' not supported (reference to group function)
まだMySQL構文のハンドルを取得しています...