MySQL计数并加入以返回有序列表


MySQL count and join to return ordered list

我在连接时遇到问题。我在这里看了几个答案,但似乎无法将其应用于我的特定问题。

我有两张桌子:

具有iduser_IPitem_id列的likes表。

一个包含许多列的auctions表,包括idtitlesubtitlelocationauctions表中的id列是指likes表中的item_id

我可以使用以下代码获得按item_id计数排序的点赞列表:

SELECT likes.item_id,count(点赞.item_id)FROM点赞按likes.item_id分组ORDER by count(likes.item_id)DESC

我需要的是让列表按最喜欢的顺序显示所有拍卖(每个拍卖的标题、副标题和地点)。我已经尝试了一些我在这里发现的东西,比如下面的代码,它给出了一个语法错误,但我无法产生我需要的输出。

选择likes.item_id,count(likes.item_id),pqc9_auctions*加入点赞其中likes.item_id=pqc9_actions.id按likes.item_id分组ORDER by count(likes.item_id)DESC

我认为这很可能很简单,但在过去的几个小时里,我一直在为这件事斗鸡眼。如有任何帮助,我们将不胜感激。

如果您需要一个简单的JOIN,请确保拼写出关系

SELECT likes.item_id, count(likes.item_id), auctions.*
FROM auctions 
    INNER JOIN likes ON likes.item_id = auctions.id
GROUP by likes.item_id
ORDER by  count(likes.item_id) DESC