SQL 中通过 COUNT() 排序

发布于 2024-12-05 07:43:49 字数 250 浏览 1 评论 0原文

假设我有一个这样的数据库表:

users
------
id
email
referrerID

我如何按推荐次数最多的成员进行排序?我正在尝试以下内容:

SELECT id, email
FROM users
WHERE 1
ORDER BY COUNT(referrerID) DESC;

但这似乎不起作用。我认为默认值 0 也可能会以某种方式影响这一点。

Let's say I have a database table like this:

users
------
id
email
referrerID

How could I sort by the members with the most referrals? I was trying something along the lines of:

SELECT id, email
FROM users
WHERE 1
ORDER BY COUNT(referrerID) DESC;

But this does not seem to work. I think that the default value 0 may also be affecting this somehow.

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

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

发布评论

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

评论(1

傲娇萝莉攻 2024-12-12 07:43:49

以下澄清

SELECT referrerID,
       COUNT(id) as Num
FROM   users
GROUP  BY referrerID
ORDER  BY CASE
            WHEN referrerID = 0 THEN -1
            ELSE COUNT(id)
          END DESC;  

Following clarification

SELECT referrerID,
       COUNT(id) as Num
FROM   users
GROUP  BY referrerID
ORDER  BY CASE
            WHEN referrerID = 0 THEN -1
            ELSE COUNT(id)
          END DESC;  
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文