我想将表1中的最新信息复制到表2中。 对于我使用的ID
插入表2(ID)(从表2中选择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
答案 0 :(得分:0)
使用GREATEST()
。
假设CL1
不可为空,CL3
除非CL2
已填满,否则无法获得价值。
INSERT INTO table2(ID, CLX)
SELECT ID, GREATEST(CL1, COALESCE(CL2, CL1), COALESCE(CL3, CL1))
FROM table1
答案 1 :(得分:0)
谢谢,
Coalesce是我查询所需的功能。
`Select ID, COALESCE(CL3,CL2,CL1) as latest from table1`