Get the App
SLTechnology News&Howtos  ›  Database  › 

What are the limitations of delete from where subqueries in mysql

Shulou Source: shulou.com Published: 2022-06-01 01:51:24 09月20日 Update

Editor to share with you what are the limitations of the delete from where sub-query in mysql. I hope you will learn a lot after reading this article. Let's discuss it together.

1. When using mysql for delete from operation, if the FROM sentence of the subquery and the update / delete object use the same table, an error will occur. (recommended: MySQL tutorial)

Mysql > DELETE FROM 'tab' where id in (select min (id) from tag GROUP BY field1,field2 HAVING COUNT (id) > 1)

Error: You can't specify target table 'tab' for update in FROM clause. (the target table 'tab' cannot be specified for updates in the FROM clause)

In most cases, the limitation of "the same table" can be solved by adding an extra layer of select alias table, like this.

DELETE FROM 'tab' where id in (select id from (select max (id) from' tab' GROUP BY field1,field2 HAVING COUNT (id) > 1) ids)

2.delete from table... Aliases cannot be used for table

Mysql > delete from table a where a.id in (1 > 2); (syntax error)

Mysql > select a. * from table a where a.id in (1); (executed successfully)

After reading this article, I believe you have a certain understanding of the restrictions on delete from where sub-query in mysql. If you want to know more about it, welcome to follow the industry information channel. Thank you for your reading!

Tags: Queries restrictions aliases articles errors updates success can be passed clauses sentences finished objects situations tutorials more goals knowledge industry grammar information Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno OPPO Reno macOS Shulou Tech Info Xiaomi vpn