按列索引更新表,而不是按列名更新

时间:2014-11-20 02:26:47

标签: mysql

我使用的是MySql,我的Products表包含ID, name, price列(和其他人)

通常您可以像这样更新数据库:

Update Products 
Set price = 100
where ID = 5

但我想用列索引而不是列名更新值。像这样:

Update Products 
Set "Third Column" = 100
where ID = 5

如何按列索引更新表?

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

根据评论,您可以使用动态SQL(不推荐),由于安全隐患或以下原因。

Update Products 
Set 
     ID = IF(colparameter=1, valueparam, ID),
     name = IF(colparameter=2, valueparam, name),
     price = IF(colparameter=3, valueparam, price)
where ID = 5

即便如此,我也不建议这样做。