2015-10-15 58 views
-3
+--------+------+-------+-------+ 
| C1  | C2 | C3  C4 | 
+--------+------+-------+------+ 
| Value1 | 1234 | 9876 | A1 | 
| Value2 | 1234 | 9876 | A1 | 
| Value3 | 1234 | 9876 | A1 | 
| Value4 | 1234 | 9876 | A1 | 
| Value1 |  |  | B1 | 
| Value2 |  |  | B1 | 
| Value3 |  |  | B1 | 
| Value4 |  |  | B1 | 
+-------+------+-------+------- + 

我有一个MySQL表上述structure.I要更新列C2的后四排& C3使用相同的数据作为列的前4行C2 & C3。此更新必须使用相同的表多列数据完成。如何使用同一个表的数据更新MySQL表的多个列

我该如何做到这一点?

+2

我想你可以尝试一些回答 – Strawberry

回答

0

您可以使用:

Update table set c2=(Select C2 from table where c4=A1) where c1=value1 

等通过内部查询更改列值或使用游标。

基于此:

Bulk Record Update with SQL

,你可以这样做:

update  Table 
set   C2= c2 
from  Table t1 
inner join Table t2 
on   t1.c1 = t2.c1 
+0

谢谢,是有批量更新任何选项?一次更新所有4列? –

相关问题