SQL 语法,如何一次更新多条数据?

例如一表格myTable:----------------------------id|name|age----------------------------1|小红|... 例如一表格 myTable:
----------------------------
id | name | age
----------------------------
1 | 小红 | 20
----------------------------
4 | 小强 | 28
----------------------------
5 | 小明 | 35
----------------------------
6 | 小蓝 | 10
----------------------------
11 | 小白 | 59
----------------------------
13 | 小黑 | 20
----------------------------

我想把:
小红的年龄加1岁
小强的年龄加3岁
小白的年龄减2岁
小黑的年龄加10岁

我是这样写的:

UPDATE myTable SET age=age+1 WHERE name='小红'
UPDATE myTable SET age=age+3 WHERE name='小强'
UPDATE myTable SET age=age-2 WHERE name='小白'
UPDATE myTable SET age=age+10 WHERE name='小黑'

写了四条,然后分别执行一次。

请问,有什么方法可以用一条语句就完成上述操作呢?也就是说只执行一次SQL就完成上面功能,有简便点的方法吗?

谢谢.!!
展开
 我来答
abingpow
2006-07-18 · TA获得超过2206个赞
知道大有可为答主
回答量:2830
采纳率:0%
帮助的人:2296万
展开全部
UPDATE myTable SET age=age+(case name when '小红' then 1 when '小强' then 3 when '小白' then -2 when '小黑' then 10 end)
当年杂货铺
2006-07-17 · 超过37用户采纳过TA的回答
知道小有建树答主
回答量:105
采纳率:0%
帮助的人:0
展开全部
如果你的1,3,2,10和后面的 名字都是随机的,那就没办法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式