mysql delete 使用別名 語法


今天刪除數據,寫了這么條sql語句,

DELETE   from  sys_menus s WHERE s.MENU_ID in (86,87,88);

結果報錯。。

[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 's WHERE s.MENU_ID in (86,87,88)' at line 1

 

后來一查,mysql使用別名有固定的語法。

當然不用也行:DELETE  from  sys_menus   WHERE  MENU_ID in (86,87,88);

用別名的:DELETE s from  sys_menus s WHERE s.MENU_ID in (86,87,88);

 

轉的!原博文網址:http://blog.csdn.net/chs_jdmdr/article/details/46708917

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;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM