mysql复杂delete操作
来源:互联网 发布:ubuntu on windows 10 编辑:程序博客网 时间:2024/05/16 05:39
对表进行update或者delete操作时,mysql不支持在where语句后面进行自身的查询,举个例子
delete from chat_room where id in(select max(id) as id from chat_room where user_to_id>0GROUP BY create_user_id,user_to_id having count(create_user_id)>1)
以上语句先是在where语句中查询了自己,然后再delete。不符合mysql的规范。
有的人搞了一层中间表,是可以的。只要where后面不是直接查询就可以。
也可以利用Join语句,让自身表不出现在where条件中。
delete t1 from chat_room t1 join (select max(id) as id from chat_room where user_to_id>0GROUP BY create_user_id,user_to_id having count(create_user_id)>1)t2on t1.id = t2.id
delete还支持join操作
delete t1 from t1join t2on t1.id=t2.idand t2.name='xiaoming'
阅读全文
0 0
- mysql复杂delete操作
- mysql delete操作
- mysql delete 千万数据操作
- mysql-update、delete、select操作
- mysql 操作总结--DELETE和TRUNCATE TABLE
- MySQL表操作 insert-delete-update-select
- mysql update、delete left join 操作
- Mysql数据库DML操作delete不支持表的别名操作
- delete操作
- delete mysql
- delete MySQL
- Mysql 高级sql操作: DELETE,UPDATE与LEFT JOIN
- mysql主从数据库同步,漏掉delete操作的问题
- mysql 数据操作insert,replace,update,delete,truncate
- JavaBean 实现Mysql数据库操作(Query、Insert、Delete、Update)
- MySQL数据库的删除操作delete和truncate的区别
- mysql数据库的插入(insert)和删除(delete)操作
- JavaBean 实现Mysql数据库操作(Query、Insert、Delete、Update)
- Math.ceil floor 函数例子
- javascript字符串
- eclipse项目中.classpath文件详解
- ArcGIS中我国常用的坐标系统WKID列表
- Java语言基础——字符串String
- mysql复杂delete操作
- linux iptables防火墙使用模板
- 算法概论 课后习题 8.3 证明
- Xcode Simulators 下载以及安装技巧
- 了解dup和dup2函数
- 服務器上session保存的位置
- HTML基础1
- 了解MyCat
- 【BZOJ2429】【MST】聪明的猴子 题解