我是MySQL的新手,并且在转换SQL语句时遇到困难,并且希望尽可能地提供一些帮助。从MySQL删除多个记录基于唯一的ID和非唯一的ID
运行是我需要能够根据上次登录日期从一个表中删除项目,不幸的是我无法控制表格设计(这是有缺陷的)并且必须将characterID与characterUID进行比较,并且LastLogin日期,以便从仅通过charcaterID(非唯一)跟踪对象的另一个表中删除项目。
这里是我迄今为止
DELETE FROM object_data WHERE CharacterID IN (
SELECT CharacterID FROM object_data
WHERE CharacterID IN (
SELECT CharacterID FROM character_data
WHERE LastLogin < DATE_SUB(NOW(), INTERVAL 30 DAY)
AND PlayerUID NOT IN (
SELECT PlayerUID FROM character_data
WHERE LastLogin > DATE_SUB(NOW(), INTERVAL 30 DAY))))
我得到的错误是1093 FROM子句您不能从更新指定目标表“object_date”。
任何想法?