zoukankan      html  css  js  c++  java
  • MySQL 中的坑

    鬼畜一、delete语句表名不能加别名

    DELETE FROM t_test a WHERE a.id = 1; 
    -------------------------------------------------------------------------
    1 queries executed, 0 success, 1 errors, 0 warnings
    
    查询:delete from t_test a where a.id = 1
    
    错误代码: 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 'a where a.id = 1' at line 1
    

    鬼畜二、You can't specify target table 't_test' for update in FROM clause

    #去重掉最大ID的重复数据
    #正确示范
    DELETE FROM  
    t_test 
    WHERE id IN 
    (SELECT * FROM
    (SELECT MAX(id) did FROM t_test b GROUP BY username HAVING COUNT(*) > 1) t);
    -------------------------------------------------------------------------
    #错误示范,oracle正确
    DELETE FROM  
    t_test 
    WHERE id IN 
    (SELECT MAX(id) did FROM t_test b GROUP BY username HAVING COUNT(*) > 1);
    -------------------------------------------------------------------------
    1 queries executed, 0 success, 1 errors, 0 warnings
    
    查询:DELETE FROM t_test WHERE id IN (SELECT MAX(id) did FROM t_test b GROUP BY username HAVING COUNT(*) > 1)
    
    错误代码: 1093
    You can't specify target table 't_test' for update in FROM clause
    
    —转载请注明出处
  • 相关阅读:
    第四周作业
    第四周上机作业
    java第十周上机练习
    java第九周上机练习
    第八周作业
    java第八周上机练习
    java第七周作业
    java第七周上机练习
    java第六周作业
    java上机练习 4.9
  • 原文地址:https://www.cnblogs.com/landiss/p/14645985.html
Copyright © 2011-2022 走看看