代码之家  ›  专栏  ›  技术社区  ›  johnc

SQL查询帮助-无法绑定多部分标识符

  •  2
  • johnc  · 技术社区  · 17 年前

    下面是查询,返回错误

    “Company.LocalityId”不能为空 跳跃

    UPDATE Company
    SET
        Company.BusinessRegionId = b.Id
    FROM 
    (
        SELECT
            Id
          FROM
            BusinessRegion
          WHERE
            tag = 'Australia/New South Wales'
    ) b
    INNER JOIN Locality l ON 
        Company.LocalityId = l.Id
    where 
        l.StateOrProvinceAbbreviation = 'NSW'
    

    我们将感激地接受任何援助。

    2 回复  |  直到 17 年前
        1
  •  4
  •   Matt Hamilton    17 年前

    您的BusinessRegion和Locality表在该查询中根本没有连接,对吗?你能改成这样吗?

    UPDATE Company
    SET BusinessRegionId = (
        SELECT TOP 1 Id
        FROM BusinessRegion
        WHERE Tag = 'Australia/New South Wales')
    FROM Locality l
    WHERE l.Id = LocalityId AND l.StateOrProvinceAbbreviation = 'NSW'
    
        2
  •  3
  •   Jose Basilio    17 年前

    UPDATE 
       c
    SET
        c.BusinessRegionId = 
        (
          SELECT TOP 1
            Id
          FROM
            BusinessRegion
          WHERE
            tag = 'Australia/New South Wales'
        )
    FROM 
       Company c
       INNER JOIN Locality l ON c.LocalityId = l.Id
    WHERE
        l.StateOrProvinceAbbreviation = 'NSW'