gpt4 book ai didi

php - 复杂查询 - 获得最多推荐的人

转载 作者:行者123 更新时间:2023-11-29 09:02:38 25 4
gpt4 key购买 nike

我正在尝试进行某种 SQL 查询,其中我只获取推荐次数最多的 10 个人,但最少推荐次数为 1。

我的 table 看起来像这样:

CREATE TABLE IF NOT EXISTS `beta_list` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`email` varchar(250) NOT NULL,
`referrer` int(10) NOT NULL,
`referral_code` int(10) NOT NULL,
UNIQUE KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;

我尝试过这样的事情:

SELECT 
email,
referral_code as refcode,
(SELECT COUNT(*) FROM beta_list WHERE referrer=refcode) as referrals
FROM
beta_list
WHERE
referrals > 0
ORDER BY
referrals DESC
LIMIT
10

但它只是说“‘where 子句’中的未知列‘推荐’”。

我不是 sql 专家,我才刚刚开始学习更复杂的 sql 查询,因此任何有关如何实现此类目标的帮助将不胜感激!

干杯!

最佳答案

试试这个 - 添加外部查询以从内部查询中提取结果 -

select ref.email, ref.refcode, ref.referrals from 
(
SELECT
email,
referral_code as refcode,
(SELECT COUNT(*) FROM beta_list WHERE referrer=refcode) as referrals
FROM
beta_list
) as ref
WHERE
ref.referrals > 0
ORDER BY
ref.referrals DESC
LIMIT
10

关于php - 复杂查询 - 获得最多推荐的人,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8134729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com