【发布时间】:2017-10-28 18:31:13
【问题描述】:
在 case when 语句 (MySQL) 中挣扎,它可能很简单,我错过了。
我有一个相当复杂的查询,它输出一些传感器值和上下限(最终会触发警报),作为我使用的查询的一部分 -
case when sequence=0 then value END as lowlimit,
case when sequence=1 then value END as highlimit
选择的输出是 -
status sensor lowlimit highlimit
163 49 NULL 24
163 49 15 NULL
128 25 NULL 8
128 25 4 NULL
但我需要将结果“串联”(每个唯一状态为一行),因此 -
status sensor lowlimit highlimit
163 49 15 24
128 25 4 8
所以可能需要在案例陈述中添加一些内容,但如果我使用
max(case when sequence=0 then value END) as lowlimit,
max(case when sequence=1 then value END) as highlimit
那么只有1行输出-
status sensor lowlimit highlimit
163 49 15 24
感谢任何帮助。
问候 活跃
【问题讨论】:
-
你能分享整个查询吗?
-
不是真的,有 8 个表连接,select 语句实际上有 15 个元素,唯一的问题是语句输出超过 1 行的情况
标签: mysql