如何知道它在数据库中的值的多少倍?对于所有价值观?

发布于 2024-10-07 16:20:14 字数 207 浏览 2 评论 0原文

这可以应用于标签、评论……

我的问题是获取例如表中某个属性的前 20 个重复项。

我的意思是,我知道我可以使用 mysql_num_rows 请求选定的属性,但是如何获取我这样做是为了了解他们所有人吗?

例如,

最受欢迎的颜色: 红色-100000 蓝色-5000 白色-200 等等...

如果有人能给我线索..谢谢!

This can be aplied to tags, to coments, ...

My question its to obtain for example, top 20 repetitions for an atribute in a table..

I mean, i know i can ask for a selected atribute with the mysql_num_rows, but how do i do it to know all of them?

For example,

Most popular colors:
Red -100000
blue -5000
white -200
and so on...

if anyone can give me a clue.. thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

半步萧音过轻尘 2024-10-14 16:20:14
SELECT `name`, count(*) as `count` FROM `colors`
GROUP BY `name`
ORDER BY `count` DESC
SELECT `name`, count(*) as `count` FROM `colors`
GROUP BY `name`
ORDER BY `count` DESC
删除会话 2024-10-14 16:20:14

您希望在数据库上而不是在应用程序中进行此计算。通常,以下形式的查询应该没问题:

SELECT color_id, COUNT(product_id) AS number
FROM products 
GROUP BY color_id
ORDER BY number DESC
LIMIT 20

这种方式会更快,因为只有值计数数据才会从数据库发送到应用程序。此外,如果您正确设置了索引(例如,在 color_id 上),大腿会更平滑。

You want to do this computation on the database, not in your application. Usually, a query of the following form should be fine:

SELECT color_id, COUNT(product_id) AS number
FROM products 
GROUP BY color_id
ORDER BY number DESC
LIMIT 20

It will be faster this way, as only the value-count data will be sent from the database to the application. Also, if you have indices set up correctly (on color_id, for instance), thighs will be smoother.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文