Mysql DELETE 不能使用别名? 是我不会用!
今天碰到一个sql问题,就是在delete中加了别名,导致报错了:"[Err] 1064 - You have an error in your SQL syntax; ..."
简单说下过程,本来是一个简单的delete语句:
delete from table1 where status=2;
后需要增加关联条件,所以在后边追加了where条件,为了关联写着方便为表添加了别名,变为:
就是这样报错了,提示语法错误,觉得挺纳闷,将delete 换成 select * (通常为了省事,验证sql的时候换成select),没有问题,执行正确。
百度很多说“mysql delete 不能使用别名”的,去掉别名后果然正常:
delete from table1 where status=2 and EXISTS (select id from table2 where table2.fid=table1.id)
虽然问题解决了,但是更纳闷了,delete不能用别名?!,当然不是,是我用错了!
delete a from table1 a where a.status=2 and EXISTS (select b.id from table2 b where b.fid=a.id)
如上,delete使用别名的时候,要在delete和from间加上删除表的别名,这样才是正确的写法。
DELETE的语法详见(这是MySQL的要求,在oracle上没有)
Mysql DELETE 不能使用别名? 是我不会用!的更多相关文章
- mysql delete 使用别名 语法
今天删除数据,写了这么条sql语句, DELETE from sys_menus s WHERE s.MENU_ID in (86,87,88); 结果报错.. [Err] 1064 - You ...
- [转]mysql delete 使用别名 语法
原文地址:https://www.cnblogs.com/wuyun-blog/p/6178303.html 今天删除数据,写了这么条sql语句, DELETE from sys_menus s ...
- 对MySQL DELETE语法的详细解析
以下的文章主要描述的是MySQL DELETE语法的详细解析,首先我们是从单表语法与多表语法的示例开始的,假如你对MySQL DELETE语法的相关内容十分感兴趣的话,你就可以浏览以下的文章对其有个更 ...
- MySQL delete语句的问题
以前遇到过几次这个问题,都觉得问题不大,所以没有记录,但是这次又遇到了,而且没有第一时间想起来,所以还是有记录下的必要 MySQL delete语句使用子查询操作同一张表的时候会抛出 DELET ...
- 【MSSQL】SqlServer中delete语句表别名的问题
1.一般情况下删除表数据的sql语句: delete from products 2.如果想给表起个别名再删除呢,就得像下面这样写了 delete products from products as ...
- MySQL DELETE语句和TRUNCATE TABLE语句的区别
MySQL DELETE语句和TRUNCATE TABLE语句的区别 2010-10-08 16:05 佚名 互联网 字号:T | T 在MySQL数据库中,DELETE语句和TRUNCATE TAB ...
- MySQL DELETE
MySQL DELETE 语句 你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录. 你可以在mysql>命令提示符或PHP脚本中执行该命令. 语法 以下是S ...
- MySQL DELETE 语句
MySQL DELETE 语句 你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录. 你可以在mysql>命令提示符或PHP脚本中执行该命令. 语法 以下是S ...
- 针对mysql delete删除表数据后占用空间不变小的问题
开发环境 Yii1版本 MySQL PHP5.6.27 前言 物流规则匹配日志表记录订单匹配规则相关日志信息,方便管理员维护和查阅不匹配的订单,四个月时间,该日志表数据就有174G,当前,这么大的数据 ...
随机推荐
- Actor模型的状态(State)+行为(Behavior)+邮箱(Mailbox)
状态(State)+行为(Behavior)+邮箱(Mailbox) 基于Actor模型的CQRS.ES解决方案分享 开场白 大家晚上好,我是郑承良,跟大家分享的话题是<基于Actor模型的CQ ...
- [转帖]TPC-C解析系列02_OceanBase如何做TPC-C测试
TPC-C解析系列02_OceanBase如何做TPC-C测试 http://www.itpub.net/2019/10/08/3333/ 导语: 蚂蚁金服自研数据库OceanBase登顶TPC- ...
- 《Mysql - Order By 的工作原理?》
一:概述 - order by 用于 SQL 语句中的排序. - 以 select city,name,age from t where city='杭州' order by name limit ...
- HDOJ-1100 Trees made to order
一.题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1100 二.题目分析 对二叉树的所有形态顺序编号,编号规则是:节点数越多的编号越大:节点数相等,左子 ...
- C++进行字母大小写转换
#include <iostream> #include <Windows.h> #include <string> using namespace std; in ...
- 【dfs】Sequence Decoding
Sequence Decoding 题目描述 The amino acids in proteins are classified into two types of elements, hydrop ...
- .NET Framework 4安装问题
1.安装时,系统提示:运行此安装程序之前,必须安装 32 位 Windows 映像处理组件(WIC). http://www.microsoft.com/downloads/zh-cn/details ...
- 淘宝图片指纹匹配功能c#实现
#region 生成图片及图片比较 public String GetHash(Image SourceImg) { Image image = ReduceSize(SourceImg); Byte ...
- span标签中显示固定长度,超出部分用省略号代替,光标放到文字上显示全部
在span中实现显示某段内容,固定其长度,多余部分用省略号代替,这样就用到html的title属性: 如:<span title="value"></span&g ...
- Axios使用拦截器全局处理请求重试
Axios拦截器 Axios提供了拦截器的接口,让我们能够全局处理请求和响应.Axios拦截器会在Promise的then和catch调用前拦截到. 请求拦截示例 axios.interceptors ...