如何用SQL语句更新一张表里的多条数据?

updateTableAsetNameSpell=(selectdbo.fn_GetPinyin(name)fromTableA)... update TableA set NameSpell=(select dbo.fn_GetPinyin(name) from TableA) 展开
 我来答
BraveHeart_Fov
2012-05-15 · TA获得超过7942个赞
知道小有建树答主
回答量:1037
采纳率:0%
帮助的人:678万
展开全部
update TableA set NameSpell=dbo.fn_GetPinyin(name)

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
不知道是不是这个意思
更多追问追答
追问
正常来说是这样的,可我想要的是更新多条数据;这样只是更新一条
追答
这个语句就是更新tableA中所有NameSpell为dbo.fn_GetPinyin(name)
什么是更新一条,不懂你意思。。。把汉字换成拼音对吧
mulin1945
2012-05-15 · TA获得超过246个赞
知道小有建树答主
回答量:297
采纳率:0%
帮助的人:189万
展开全部
这个是全表更新,注意子查询的结果集是单条记录就可以了,过滤条件用where
更多追问追答
追问
select dbo.fn_GetPinyin(name) from TableA
这个是将表的名字字段转换成拼音,是多列值,不是一列
追答
那多列的值是一样的,还是都是不同的呢
都是一样的用select max(dbo.fn_GetPinyin(name) ) from TableA就可以了
不同的,那你得有自己的判断找出你想要的那一个值啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cjuesi
2012-05-15 · TA获得超过963个赞
知道小有建树答主
回答量:540
采纳率:88%
帮助的人:140万
展开全部
如果dbo.fn_GetPinyin(name)返回的是多列值,可以改成这样
update TableA set NameSpell in (select dbo.fn_GetPinyin(name) from TableA)
追问
那样是不可以的
追答
看错了,以为是条件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式