删除别名为 MySQL 的子查询

Delete subquery with alias MySQL

我对这个删除查询有疑问:

DELETE r 
FROM table AS r 
WHERE r.stoptime IS NULL 
  and r.address IN 
    (select address from table where starttime <= r.starttime and stoptime > r.starttime) 

我收到以下错误:

错误:您无法在 FROM 子句中为更新指定目标 table 'r'。

我的目标是删除开始时间包含在另一条记录中的记录,但是子查询中的别名出现错误。

有人知道怎么做吗?提前致谢。

尝试像这样使用 JOINS:

 DELETE r
  FROM `table` r 
  JOIN `table` t ON t.id = r.id
 WHERE t.starttime <= r.starttime and t.stoptime > r.starttime
   AND r.stoptime IS NULL