根据同一行中的另一列值填充列的值
capacity Comment
1.0
1.7
7.2
9.9
10.0
我想要做的是,我想基于容量值自动完整评论值。根据同一行中的另一列值填充列的值
如果容量值是1,1.2,1.3,1.4,1.5 ... ...(所有小数高达1.9)我要填写注释值“低”
,这样它看起来像这
capacity Comment
1.0 low
1.7 low
7.2 average
9.9 fine
INTEL great
希望你明白这一点。提前致谢。
可以使用CASE
表达这样做:
UPDATE Tablename
SET Comment = CASE
WHEN capacity >= 1.0 AND Capacity <= 1.9 THEN 'low'
WHEN ... THEN 'average' -- Put the condition for the average
...
END;
- 在每个
WHEN
条款,每个级别的条件下把。 - 请不要忘记
ELSE
子句,因为如果您没有定义作为默认值。
太棒了!它的作品:) – user2373405 2013-05-11 18:06:59
但是当我试图做到这一点:(没有任何反应..它正在改变绿色标记,当我刷新页面,它再次改变为默认 – user2373405 2013-05-12 06:05:00
确定:)做到了:D谢谢 – user2373405 2013-05-12 06:05:29
使用更新与如果也许?
像这样:
UPDATE table
SET comment = IF (capacity < 2, 'low', IF(capacity < 8, 'average')....)
#1064 - 您的SQL语法错误;检查对应于你的MySQL服务器版本的手册,在第二行使用正确的语法'')''#ERROR – user2373405 2013-05-11 18:04:30
是的,它不是一个完整的例子,上帝禁止你必须改变和键入任何东西,对此感到遗憾。 ......意思是表明你需要拿出这个例子的shell并且稍微处理一下以得到最终答案。下次我将确保只为你发布完全完整的答案。 – mconlin 2013-05-11 18:10:25
这需要用MySQL来完成,而不是用PHP/ASP来完成......等等。 – Dave 2013-05-11 17:57:21