我一直在尝试在MySQL5.7中执行以下查询。
DELETE FROM tablename1 T1
WHERE EXISTS (
SELECT *
FROM tablename1 T2
WHERE T2.code = T1.code
AND T2.dname = T2.dname
AND T2.created_date > T1.created_date
);
但它给了我一个错误:原因:liquibase.exception.databaseexception:您的sql语法有错误;检查与mysql服务器版本对应的手册,以获得在't1'附近使用的正确语法
这个查询在oracle中运行得很好,但由于某些原因,在MySQL5.7中“alias”不起作用。无论如何,我可以在MySQL5.7版本中修复这个问题。
提前谢谢。
1条答案
按热度按时间kdfy810k1#
我很确定问题不在别名上,但是在子查询要从中删除的表时,请尝试此操作。
我也不确定它是否有效,因为它仍然引用delete主题两次;但值得一试。