mysql text类型字段内容更改的问题

text字段内的第一个字符是对应到ID字段的数字的,ID是自动增加的数字,现在ID字段的数字都被增加了300,text字段内的第一个字符为了和ID字段对应也必须增加300... text字段内的第一个字符是对应到ID字段的数字的,ID是自动增加的数字,现在ID字段的数字都被增加了300,text字段内的第一个字符为了和ID字段对应也必须增加300。概况如下表

原来的内容:
ID text ..
1 1 xx xx
2 2 xx xx
3 3 xx xx

ID被增加了300之后
ID text ..
301 1 xx xx
302 2 xx xx
303 3 xx xx

要怎么才能让text字段内的第一个字符和ID字段的数字对应呢?达到下面的效果:
ID text ..
301 301 xx xx
302 302 xx xx
303 303 xx xx

可能描述的比较模糊,还请大大们帮助
谢谢spiderrobot 的回答,但是我是个只会简单mysql命令的新手
请问可以麻烦您帮我写个范例吗?
展开
 我来答
ylongshao1987
推荐于2017-10-01 · TA获得超过9811个赞
知道小有建树答主
回答量:1277
采纳率:100%
帮助的人:712万
展开全部
你可以这样改:table为你的表名,text是关键字,要加`,这个符号再esc键下面,不要加shift
update table set `text`=concat(id,substring(`'text`,2,length(`text`)));
这样就可以把id都加进去了。text中数据是你insert进去的,既然自己知道要怎样的效果,一开始就要设计好。
spiderrobot
2010-12-01 · TA获得超过871个赞
知道小有建树答主
回答量:930
采纳率:0%
帮助的人:575万
展开全部
text里面的字符串做分离,用SUBSTRING把前面的数字拿出来,和ID一样做加300,然后再和后面的部分CONCAT起来,
字符转成数字的话很简单,+0,
数字要想变成字符的话,和''做concat。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
枚邈璩丹雪
2019-09-04 · TA获得超过3481个赞
知道大有可为答主
回答量:3054
采纳率:34%
帮助的人:454万
展开全部
正确的sql语句如下:
create
table
`tt`
(
`a`
char(10)
default
null,
`b`
text
)
engine=myisam
default
charset=utf8
既然知道是长类型的,就不用定义其长度了。
复制我的代码,执行一下。我测试已经通过。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1214fdcbb
2010-12-01 · TA获得超过1240个赞
知道小有建树答主
回答量:316
采纳率:0%
帮助的人:379万
展开全部
update table set [text]=convert(nvarchar(10),[id])+substring([text],2,len([text])-1)

table改成你的表名就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式