基于mysql中delete的语法别名问题
短信预约 -IT技能 免费直播动态提醒
mysql delete的语法别名问题
首先确认,mysql中的delete语句是支持别名的;
在自己书写delete语法时候,语句如下:
delete from tableA a where a.c_pk_id = '123'
但是会报一个别名使用错误,如下:
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'q
WHERE
q.C_PLY_NO = '1100107000404000220150000001'
AND q.N_EDR_PRJ_NO = '1'' at line 3
通过查询资料得知,mysql的delete的语法有些特殊,如下:
delete a from tableA a where a.c_pk_id = '123'
成功删除!!!
比较之后可知道,delete语句在用别名的时候要多写一个别名在delete后边
mysql delete 语句中使用别名 alias
语法:
delete <alias> from <table> <alias> where <alias>.<field>...
别名必需在 delete之后出一次。
多表间删除语法:
DELETE t1, t2 FROM t1 INNER JOIN t2 INNER JOIN t3
WHERE t1.id=t2.id AND t2.id=t3.id;
Or:
DELETE FROM t1, t2 USING t1 INNER JOIN t2 INNER JOIN t3
WHERE t1.id=t2.id AND t2.id=t3.id;
LEFT JOIN:
DELETE t1 FROM t1 LEFT JOIN t2 ON t1.id=t2.id WHERE t2.id IS NULL;
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341