MySQL将两个记录合并为一个

时间:2017-09-26 12:26:12

标签: mysql select join

我有

的状态表
id (primary key )
case id 
read status
delivered status

现在我可以为具有不同值的相同案例ID提供多条记录

这里我有案例ID(111),有两行

ID  case_id     read_status     delivered_status
1   111         1                0
2   111         0                1

如何运行查询以便为上述案例提供一行,其读取状态和交付状态为1?

SqlFiddle

http://sqlfiddle.com/#!9/9d977e/1

2 个答案:

答案 0 :(得分:1)

  

将状态和交付状态读取为1

你的意思是最大值吗?如果是这样,这就是小提琴。

Fiddle

查询:

select 
  `case_id`,
  max(`read_status`),
  max(`delivered_status`)
from status
group by `case_id`

答案 1 :(得分:0)

您可以按case_id分组,只需获取组

中列的最大值
select id, case_id ,max(read_status) as read_status , max(delivered_status) as delivered_status  from status group by case_id