MySQL如何快速匹配列并更新?

时间:2016-11-17 05:06:06

标签: mysql

我有一张这样的表:

 SSN  NAME PT1 PT2 PT3

 0002 Abby  12  14 15

现在我正在编写一个使用ssn,pt name和一个新值输入的过程。假设我可以匹配ssn 0002,我需要找到PT2来将值更新为28。

我很困惑,因为更新格式是update / set / where。但是,如何将列名与输入匹配,而不是逐个检查它们?我当然可以做到

IF ptname = PT1 then ... else IF ptname = PT2 then ... 

然而,代码将是乏味的。任何建议将不胜感激!谢谢!

1 个答案:

答案 0 :(得分:0)

在变量

中创建sql
DECLARE @mySQL nVARCHAR(4000)

SET @mySQL = 'UPDATE tableName SET '+ @strColumn + ' = ' + @strValue 

EXECUTE sys.sp_executesql @mySQL, N'@strColumn VARCHAR(12), @strValue VARCHAR(12)',strColumn ,strValue