MYSQL中插入sql语句出现大问题

有一个表art有两个字段一个是ID一个是content,ID是自动编号前面的ID是19插入新的记录id肯定是20但是我要如何才能让centent的内容变成myidis20... 有一个表 art 有两个字段 一个是ID 一个是content,ID是自动编号 前面的ID是19 插入新的记录id肯定是20但是我要如何才能让centent的内容变成my id is 20(意思就是 当ID为999的时候 centent的内容变成my id is 999),插入新纪录的SQL如何写啊insert into art(centent) values (????),或者是如何才能够实现啊 展开
 我来答
wjliuleidian
2013-09-26 · TA获得超过220个赞
知道小有建树答主
回答量:316
采纳率:100%
帮助的人:229万
展开全部

test:连续运行5次。


结果如下:


漫靖厹0r
2013-09-26 · TA获得超过214个赞
知道答主
回答量:46
采纳率:0%
帮助的人:63.2万
展开全部

楼上说的不对,虽然结果是对的.

last_insert_id() 是查询数据库内,最后一次自增id.

也就是说,当你一个数据库内有2个表,且 两个表都有自增id, 那结果就会乱了.

mysql也不允许 对一个表先查再改, 所以子查询也不能用.

我的结论是, 无法用一条语句实现你的功能, 除非是你的db里只有这一个表有自增id.

两条语句:

  1. insert into art set centent='';

  2. update arta set centent=concat('my id is', id) order by id desc limit 1;

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cndonger
2013-09-26 · TA获得超过801个赞
知道小有建树答主
回答量:1425
采纳率:0%
帮助的人:938万
展开全部
Mysql有一个函数:last_insert_id(),自己测试下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式