zoukankan      html  css  js  c++  java
  • Update 两个表之间数据更新

    一、当用一个表中的数据来更新另一个表中的数据,T-SQL提供多种写法(下面列出了二种),但建议用第一种写法,虽然传统,但结构清晰。

    并且要注意,当用一个表中的数据来更新另一个表中的数据时,二个表一定要有关联!

    1.


    update t1  
            set t1.c2 = t2.c2 
          from t2 
    where t1.c1 = t2.c1 

    2.


    Update t1  
            set t1.c2 = t2.c2 
    from t1 inner join t2  
            on t1.c1 = t2.c1 

    二、FROM 子句中指定的表的别名不能作为 SET column_name 子句中被修改字段的限定符使用。
        例如,下面的内容无效:


    UPDATE titles 
    SET t.ytd_sales = t.ytd_sales + s.qty 
    FROM titles t, sales s 
    WHERE t.title_id = s.title_id 
    AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales) 

    若要使上例合法,请从列名中删除别名 t 或使用本身的表名。
    1.


    UPDATE titles 
    SET ytd_sales = t.ytd_sales + s.qty 
    FROM titles t, sales s 
    WHERE t.title_id = s.title_id 
    AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales) 

    2.


    UPDATE titles 
    SET titles.ytd_sales = t.ytd_sales + s.qty 
    FROM titles t, sales s 
    WHERE t.title_id = s.title_id 
    AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales)

  • 相关阅读:
    I.MX6 Surfaceflinger 机制
    理解 Android Fragment
    RPi 2B DDNS 动态域名
    RPi 2B IPC webcam server
    理解 Android MVP 开发模式
    I.MX6 system.img unpack repack
    can't set android permissions
    VMware Ubuntu 共享文件夹
    解决oracle数据库连接不上的问题
    perfect-scrollbar示例
  • 原文地址:https://www.cnblogs.com/moss_tan_jun/p/2089442.html
Copyright © 2011-2022 走看看