mysql 如果有1个以上的行具有列值(状态:“活动”)

pxyaymoc  于 2022-11-21  发布在  Mysql
关注(0)|答案(1)|浏览(170)

我 有 一些 用户 功能 , 其中 一 个 用户 可以 有 许多 设置 , 但 只有 一 个 活动 。 我 需要 一 个 cron 检查 是否 有 任何 用户 与 2 个 或 更多 的 " 活动 " 状态
数据 库 示例 :
| 识别 码|用户 标识|状态|
| - -| - -| - -|
| 一 个|小 行星 2775| ' 活动 '|
| 2 个|小 行星 485| ' 非 活动 '|
| 三 个|小 行星 3333| ' 活动 '|
| 四 个|小 行星 3333| ' 非 活动 '|
| 五 个|小 行星 3333| ' 活动 '|
| 六 个|小 行星 1575| ' 活动 '|
| 七 个|小 行星 8151| ' 非 活动 '|
| 八 个|小 行星 4444| ' 非 活动 '|
| 九 个|小 行星 4444| ' 活动 '|
| 10 个|小 行星 4444| ' 活动 '|
所以 我 需要 一 个 SELECT 语句 来 返回 第 3 、 5 、 9 、 10 行
| 识别 码|用户 标识|状态|
| - -| - -| - -|
| 三 个|小 行星 3333| ' 活动 '|
| 五 个|小 行星 3333| ' 活动 '|
| 九 个|小 行星 4444| ' 活动 '|
| 10 个|小 行星 4444| ' 活动 '|
有 什么 帮助 吗 ?

dxxyhpgq

dxxyhpgq1#

我自己已经找到答案了。

SELECT * FROM `table_name`
where status = 'active'
GROUP BY user_id
HAVING COUNT(*) >= 2

实际上,它只会为每个user_id返回一个分组行,但这样就可以了。

相关问题