gpt4 book ai didi

MySQL 通过 COUNT(*) 的标准差限制结果

转载 作者:行者123 更新时间:2023-11-29 12:37:38 27 4
gpt4 key购买 nike

我有一个表,用于存储不同类型媒体的文本标签。每个媒体可以有多个标签,并且可以多次有相同的标签。我想要做的是返回计数在平均计数一个标准差内的媒体的所有标签。

例如:Image1 有四个标签 - Large、blue、large、small、blue。

我正在寻找的结果是:大,蓝色 - 因为有两个“大”和两个“蓝色”,但只有一个“小”,这与平均计数相差不止一个标准。

有道理吗?我似乎无法通过一个查询来完成这一任务。这可能吗?

最佳答案

CTE 会很好,但是鉴于 MySQL 中不存在 CTE,您可以将问题分成几个子选择。

在以下示例中,将 dev.a +-2 更改为您想要的任何偏差。

select b.*
from bob b
inner join (
select tag, count(tag) cnt
from bob
group by tag
) cnt on cnt.tag = b.tag
inner join (
select avg(cnt) a from (
select tag, count(tag) cnt
from bob
group by tag
) dev
) dev on cnt.cnt between (dev.a - 2) and (dev.a + 2)

关于MySQL 通过 COUNT(*) 的标准差限制结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26534958/

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