我先得到最新的一条数据(标的id是自增的)于是我用
update class set name ='sads' where id in (select max(id) from class)结果报错 不知道如何去解决这个问题
update class set name ='sads' where id in (select max(id) from class)结果报错 不知道如何去解决这个问题
解决方案 »
- [新手]请教mysql 一天IP1.2万左右 cpu占用100%
- 数据库开发这点事 中文PDF下载
- sql 语句 ,给看看呗~
- mysql联合查询语句不出现笛卡儿积
- linux+mysql正常用了半年多了,但今天因为停电,重新启动后mysql就起不来了
- pocle在服务器生成HTML,mysql报错,帮忙
- 100分请教PostgreSQL源代码分析中的optimizer/plan部分!高手请帮忙,在线等!
- 怎么找到指定路径下的数据库?
- 在用powerdesigner 9把概念模型转换成物理模型的时候,如果没有我所要的dbms,应该怎么去新增?
- mysql编码问题
- 靠!Mysql delete不支持where???????
- mysql查询问题
update class a set a.name ='sads' where a.id in (select max(b.id) from class b)
原因可能是update class这个表的时候mysql锁定这张表,为什么要锁定的原因类似于where条件中不能用聚集函数,因为执行sql时不能确定聚集函数的值,类比你的子查询结果对sql来说不能确定,所以报错
int fun1()
select max(id) from A
return rs.getInt(1);
fun2()
int maxid = fun1();
select * from A where id = maxid;
这样做清晰!