我想将表1中的最新信息复制到表2中。
我使用的ID
插入到Table2(ID)中(从Table2中选择ID)。那不是问题。
CL1包含最早的数据。
CL3包含最新数据。所以CL2介于两者之间。
插入可能是将ID从Table1复制到Table2的最简单方法
我的MySQL问题如下。
表格1
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
最佳答案
使用GREATEST()
。
假定CL1
不可为空,并且CL3
不能具有值,除非CL2
被填充。
INSERT INTO table2(ID, CLX)
SELECT ID, GREATEST(CL1, COALESCE(CL2, CL1), COALESCE(CL3, CL1))
FROM table1
SQLFiddle Demo
关于mysql - MySQL将列值从几列复制到一列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16851114/