【问题标题】:How to Update Using Join (Linked Server)如何使用加入更新(链接服务器)
【发布时间】:2015-12-11 14:37:44
【问题描述】:

我想匹配两个数据库之间的数据。 我有 2 个数据库。 Aa 和 Bb,我想将 Aa 与 Bb 进行比较。数据库 Bb 在链接服务器中

我有这样的加入代码

SELECT
B.Employee_Name, B.Employee_NIP, B.DomainName, A.NAMA, A.NIP,
A.StatusEmployee, A.ActiveStatus
FROM
[SERVER-B].Bb.dbo.employee_hierar AS B RIGHT OUTER JOIN
Bb AS B ON B.NIP = A.Employee_NIP

如果 B.Employee_Name 和 B.Employee_NIP 上有 NULL 数据,我想将 A.StatusEmployee 从 Y 更新为 N

注意: SQL服务器

请指教

【问题讨论】:

    标签: sql sql-server database outer-join


    【解决方案1】:

    您可以使用join。比如:

    update a
        set StatusEmployee = 'N'
    from bb a LEFT JOIN
         [SERVER-B].Bb.dbo.employee_hierar b
        on B.NIP = A.Employee_NIP
    where b.EmployeeName is null and b.Employee_NIP is null and
          a.StatusEmployee = 'Y';
    

    【讨论】:

      【解决方案2】:

      这与更新一个数据库中的多个表相同。标准sql应该这样写:

      UPDATE A
      SET StatusEmployee = "N"
      WHERE NOT EXISTS
      ( SELECT * FROM B WHERE B.NIP = A.Employee_NIP )
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-08-09
        • 2011-10-01
        • 1970-01-01
        • 2010-09-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多