gpt4 book ai didi

mysql - 在 WHERE 中使用来自 SELECT 的值

转载 作者:可可西里 更新时间:2023-11-01 07:17:46 26 4
gpt4 key购买 nike

所以我选择了一个名称和与该名称相关的一些运动,我只需要在该运动数大于 1 时选择它们。

SELECT DISTINCT name AS FullName,  
(SELECT COUNT(id) FROM coaches WHERE coaches.name=FullName) AS NrOfSports
FROM coaches WHERE NrOfSports>1

如果 WHERE 被删除,查询工作正常并显示所有行,其中有些行只有“1”作为 NrOfSports。当我将它添加到 WHERE 子句时,我收到一个错误,因为它无法被识别。这让我感到困惑,因为如果我在另一个 SELECT 列中使用它,它会正常工作。

有没有办法做到这一点?它不能依赖于软件。

最佳答案

使用 Group ByHaving 代替:

SELECT name AS FullName, 
COUNT(id) AS NrOfSports
FROM coaches
GROUP BY name
HAVING COUNT(id) > 1

您的相关查询可以工作,您只需将其移动到子查询,然后您可以添加 where 条件。但是,我相信 group by 会更快。

关于mysql - 在 WHERE 中使用来自 SELECT 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34476196/

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