0

我正在尝试根据用户保存该术语的次数对数据库中的条目进行排名。

所以如果我的桌子是

id 笔记本电脑价格
1 台 Macbook 2000 美元
2 英镑 2300 美元
3 英镑 2300 美元
4 英镑 2000 美元

查询将返回

1.) MBP
2.) MacBook

我愚蠢地认为排名 GROUP_BY 和 DESC 会这样做,然后我尝试了 @Rank := @Rank +1 方法无济于事。[我必须承认,我不确定这是否是解决问题的正确方法]

SET @rank :=0;
选择 * 从 (
  选择 d.*, @rank := @rank + 1
  FROM 数据
  由 d.`laptop` 订购
) d2
WHERE d2.laptop = 'MBP'

感谢您的任何帮助。

4

1 回答 1

3
SELECT laptop FROM table
  GROUP BY laptop
  ORDER BY COUNT(laptop) DESC

为什么那行不通?

于 2011-01-24T02:02:31.617 回答