在mysql中乘以整列条目

时间:2010-10-29 16:29:55

标签: mysql

您好我有15行数据(用户条目),每行有100个字段(通过单选按钮1-6回答调查)。

每个受访者的每个答案都需要乘以+1或-1

从这里开始,我需要新的正值或负值驻留在同一个表中(或者新副本并不重要)

问题:处理此类计算的最佳方法是什么?

(大约有30个答案需要乘以-1)。

1 个答案:

答案 0 :(得分:1)

首先,您的设计并未真正规范化 - 这将涉及将所有答案放在一列中,可能将用户和问题编号作为复合主键。该组织将使这更容易。

实际上,您的查询需要如下所示:

update responses set
  answer_2 = -1 * answer_2,
  answer_3 = -1 * answer_3,
  answer_4 = -1 * answer_5,
  answer_7 = -1 * answer_7;

这些列名称是您需要否定的列。

鉴于查询中需要有30个赋值行,我建议你使用复制和粘贴,或者几行shell脚本。但是,三十不足以转向比这更复杂的事情。