gpt4 book ai didi

php - mysql group by select 条件值

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

例如,在我的消息表中有以下行,

|----|---------|--------------|------|
| id | user_id | message |status|
|====|=========|==============|======|
| 1 | 2 | msgs 11 | r |
|----|---------|--------------|------|
| 2 | 3 | msgs 12 | r |
|----|---------|--------------|------|
| 3 | 2 | msgs 13 | r |
|----|---------|--------------|------|
| 4 | 3 | msgs 14 | u |
|----|---------|--------------|------|

现在,我需要为每个 user_id 知道两件事

  • 是否有任何状态u
  • 有多少条消息

例如,如下查询 从按 user_id 的消息组中选择 user_id、status、count(*) 作为 totalMsg会给我带来以下几行

| user_id | status| totalMsg |
|=========|=======|==========|
| 2 | r | 2 |
|---------|-------|----------|
| 3 | r | 2 |
^
|------> I need this value to be 'u' because user 3 has a message u

我当前的查询并不能真正保证它将在状态列中查找 u。那可能吗?如果是怎么办?

最佳答案

MAX() 将对此起作用,因为 r 是基于字典顺序的最小值。

SELECT  user_ID,
MAX(status) status,
COUNT(*) totalMsg
FROM messages
GROUP BY user_ID

关于php - mysql group by select 条件值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17763818/

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