mysql - 将具有相同值的多行分组mysql
问题描述
我有一个特定的结果集,我需要在 userId 上将它们组合在一起。
例如
userId 2019-01-15 2019-01-16
------------------------------
132 0 30_140
132 30_140 0
所需输出:
userId 2019-01-15 2019-01-16
------------------------------
132 30_140 30_140
由于值包含非数字字符,因此 SUM 不起作用。
解决方案
如果空值是全部0
,或者NULL
您可以使用MAX
:
SELECT userID, MAX(`2019-01-15`) AS `2019-01-15`, MAX(`2019-01-16`) AS `2019-01-16`
FROM test
GROUP BY userID
输出:
userID 2019-01-15 2019-01-16
132 30_140 30_140
推荐阅读
- xamarin - PCLAppConfig System.IO.FileNotFoundException
- jenkins-job-dsl - 将 DSL 用于 Jenkins 作业时,Ansible AWX 步骤失败
- xml - XML 错误 文档末尾的额外内容
- java - 用Java中的字符增加数字
- java - Google AppEngine 密钥异常
- python - 如何找到作者的频率并使用 Python 绘制它?
- ios - 为 UIWebkit 赋予价值并更改实例化 ViewController [Swift 4]
- html - 绘制可悬停的三角形
- c# - 如何分离/过滤输出字符串并将分离的数据写入不同的文本框中?
- php - Wordpress ACF - 如何从类别页面获取字段