zoukankan      html  css  js  c++  java
  • mysql update语句

    UPDATE ClientBankInfo 
    SET 
        status = 3
    WHERE
        sn IN (SELECT 
                sn
            FROM
                zjzc.ClientBankInfo
            WHERE
                cardNo IN (SELECT 
                        cardNo
                    FROM
                        ClientWenJinCardInfo
                    WHERE
                        status = 3));
    					
    					
    UPDATE ClientBankInfo p, (SELECT 
                sn
            FROM
                zjzc.ClientBankInfo
            WHERE
                cardNo IN (SELECT 
                        cardNo
                    FROM
                        ClientWenJinCardInfo
                    WHERE
                        status = 3)) pp
    SET  p.status = 3
    where p.sn=pp.sn
    
    
    关联更新测试;
    mysql>  select * from t1;
    +------+------+
    | id   | name |
    +------+------+
    |    1 | a1   |
    |    2 | a2   |
    |    3 | a3   |
    |    4 | a4   |
    |    5 | a5   |
    |    6 | a6   |
    +------+------+
    6 rows in set (0.00 sec)
    
    mysql>  select * from t2;
    +------+------+
    | id   | name |
    +------+------+
    |    6 | a6   |
    |    5 | a5   |
    +------+------+
    2 rows in set (0.00 sec)
    
    mysql> start transaction;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> update t1,t2 set t1.name='xx' where t1.id=t2.id;
    Query OK, 2 rows affected (0.01 sec)
    Rows matched: 2  Changed: 2  Warnings: 0
    
    mysql>  select * from t1;
    +------+------+
    | id   | name |
    +------+------+
    |    1 | a1   |
    |    2 | a2   |
    |    3 | a3   |
    |    4 | a4   |
    |    5 | xx   |
    |    6 | xx   |
    +------+------+
    6 rows in set (0.00 sec)
    
    mysql>  select * from t2;
    +------+------+
    | id   | name |
    +------+------+
    |    6 | a6   |
    |    5 | a5   |
    +------+------+
    2 rows in set (0.00 sec)
    
    
    如果:
    
    mysql> update t1,t2 set name='xx' where t1.id=t2.id;
    ERROR 1052 (23000): Column 'name' in field list is ambiguous
    
    提示name列是模糊的
    
    /**************
    mysql>  select * from t2;
    +------+------+
    | id   | name |
    +------+------+
    |    6 | a6   |
    |    5 | a5   |
    +------+------+
    2 rows in set (0.00 sec)
    
    mysql> update t1,t2 set name='xx' where t1.id=t2.id;
    ERROR 1052 (23000): Column 'name' in field list is ambiguous
    mysql> update t1,t2 set t2.name='xx' where t1.id=t2.id;
    Query OK, 2 rows affected (0.01 sec)
    Rows matched: 2  Changed: 2  Warnings: 0
    
    mysql>  select * from t2;
    +------+------+
    | id   | name |
    +------+------+
    |    6 | xx   |
    |    5 | xx   |
    

  • 相关阅读:
    微信菜单设置为小程序报错85005错误
    VS2013常用快捷键
    VS2017专业版和企业版激活密钥
    微信小程序image组件binderror使用例子(对应html、js中的onerror)
    本科无学位有哪些途径来获得硕士学位
    asp.net 微信JsSDK
    使用nginx反向代理,一个80端口下,配置多个微信项目
    对称与非对称加密;SSL;HTTPS;AJP
    java 在实例化异常的时候做的事情
    简单理解正向,反向,透明代理
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13350305.html
Copyright © 2011-2022 走看看