MySQL将列值从多个列复制到一个列
我想将表1中的最新信息复制到表2中。 我用的身份证 在表2中插入ID,从表2中选择ID。这不是问题。 CL1包含最旧的数据。 CL3包含最新的数据。所以CL2介于两者之间 Insert into可能是将ID从表1复制到表2的最简单方法 我对MySQL的问题如下 表1MySQL将列值从多个列复制到一个列,mysql,copy,mysql-workbench,Mysql,Copy,Mysql Workbench,我想将表1中的最新信息复制到表2中。 我用的身份证 在表2中插入ID,从表2中选择ID。这不是问题。 CL1包含最旧的数据。 CL3包含最新的数据。所以CL2介于两者之间 Insert into可能是将ID从表1复制到表2的最简单方法 我对MySQL的问题如下 表1 ID | CL1 | CL2 | CL3 A | 1 | 2 | 3 B | 1 | 2 | NULL C | 1 | 2 | 3 D | 1 | NULL
ID | CL1 | CL2 | CL3
A | 1 | 2 | 3
B | 1 | 2 | NULL
C | 1 | 2 | 3
D | 1 | NULL| NULL
E | 1 | 2 | 3
Table 2
ID | CLX
A |
B |
C |
D |
E |
结果应该是:
Table 2
ID | CLX
A | 3
B | 2
C | 3
D | 1
E | 3
使用最大的
假设CL1不可为null,并且除非CL2被填充,否则CL3不能有值
谢谢,
Coalesce是我查询所需的函数
`Select ID, COALESCE(CL3,CL2,CL1) as latest from table1`
`Select ID, COALESCE(CL3,CL2,CL1) as latest from table1`