在MySQL中最常见的列表

时间:2016-11-27 15:56:42

标签: php mysql


我是新来的,如果我的问题不如你习以为常,那就很抱歉 基本上我有一个MySQL数据库,有多个列,如“名称”,“描述”和“标签” 如果我的用户搜索了某个特定单词,例如“apple”,我将如何浏览所有列并按最常见到最不常见的顺序返回行。
一个例子是:用户搜索“apple”,第一个结果将显示在列表的顶部(如我当前的系统所做)但是“banana”在描述和标签中出现了更多的apple,所以我想要那是在顶部。
我真的希望这是有道理的,谢谢你的帮助! 编辑:所以显然这太宽泛所以非常简单。 3列(名称,描述,标签)。让我们说有3排,名字:苹果,香蕉,葡萄。 如果我的用户搜索苹果,我不希望苹果出现在结果的顶部,就像它在数据库本身一样。我想检查所有3列,并按总出现次序列出它们。例如,如果葡萄有20次出现,香蕉有17次,苹果有3种,那么搜索结果将按顺序列出:葡萄,香蕉,苹果。 我目前拥有的是:"SELECT * FROM items WHERE name LIKE '%$result%'"

1 个答案:

答案 0 :(得分:1)

您可以使用mysql

中的内置计数功能来计算它

以下示例计算“UserId”的使用次数,但您可以根据需要对其进行修改。

Mysql COUNT documentation

SELECT UserId, COUNT(*)
FROM badges
GROUP BY UserId
ORDER BY COUNT(*) DESC