使用重复值合并mysql列,但某些列为null

时间:2017-03-19 16:45:13

标签: php mysql

我正在尝试整合mySQL中三列的数据。这是数据结构的简化示例:

 Payment     EmpId1     EmpId2    EmpId3

  $25.04      345         345       x
  $12.34      123           x       x
  $89.76      999           x      999

其中x ='Null'

我想有一个类似于

的EmpId列
  Payment      EmpID

   $25.04       345
   $12.03       123
   $89.76       999 

我的挑战是如何在有时有EmpID的情况下在三列中整合信息,有时则不是。我尝试了CASE声明,但结果令人不满意。这可以在mySQL中完成,还是应该在PHP中完成?

1 个答案:

答案 0 :(得分:0)

这对我有用:

select coalesce(EmpId1, EmpId2, EmpId3) as EmpId, payment from table

但可能还有其他更优雅的解决方案。