【发布时间】:2014-09-01 15:14:34
【问题描述】:
我有一个表,我正在 A 列上执行 GROUP_CONCAT,其中包含哈希值。组合在一起的每一行都可以在 B 列中包含不同的值。假设 B 列可以包含“是”或“否”。
如果该组中有“是”和“否”的行,我想将“是”作为 B 列分组的结果。如果我什么都不做,根据文档,我会得到一个B 列的随机结果。
我还没有找到接受固定值/字符串的聚合函数。函数 FIXED_VALUE 是我希望看到的不存在的聚合函数。
+--------+---------+
| hash | yes_no |
+--------+---------+
| 111111 | yes |
| 111111 | no |
| 111111 | no |
| 222222 | no |
| 222222 | no |
+--------+---------+
SELECT FIXED_VALUE(yes_no='yes') FROM my_table GROUP BY hash
【问题讨论】:
-
你能发布一些数据和你所做的尝试吗?
-
刚刚添加了更多细节。谢谢!
-
mysql 中没有名为 FIXED_VALUE 的函数。看看我发布的答案我还发布了一个演示它的工作。
-
我刚刚用更好的方法编辑了我的答案。只需在 yes_no 上使用 MAX() 聚合
标签: mysql group-by aggregate-functions