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
    
    —转载请注明出处
  • 相关阅读:
    RabbitMQ消费端自定义监听器DefaultConsumer
    RabbitMQ exchange交换机类型
    RabbitMQ 快速入门
    chrome jsonView插件安装
    谈谈令人头大的prototype 和__proto__
    原生JS写一个淡入淡出轮播图
    模拟聊天对话框
    全选反选的小案例
    原生js做一个简单的进度条
    点击回到顶部的按钮
  • 原文地址:https://www.cnblogs.com/landiss/p/14645985.html
Copyright © 2011-2022 走看看