我正在寻找根据另一个表的"查看次数最多"计数对结果集进行排序的最佳方法?
我有一张产品表和一张历史记录表。历史表存储产品的视图计数,并通过product_id链接。
按照历史记录表中的"view_count"列对产品列表进行排序的最佳方式是什么?
谢谢你的帮助。
假设products
和history
之间存在一对一关系,则查询将类似于:
SELECT products.* FROM products
INNER JOIN history on products.id = history.products_id
ORDER BY history.view_count DESC
如果每个product
都有多个history
记录,则情况不同。这可能无法缩放,您可能会考虑将view_count
添加到products
,然后在每个视图中递增。