【问题标题】:Trying to rewrite Access query in SQL Server尝试在 SQL Server 中重写 Access 查询
【发布时间】:2023-03-26 14:41:02
【问题描述】:

我正在尝试重新编写这个我最初没有编写的查询。它最初是在 Access 2000 中创建的。

UPDATE DISTINCTROW NewEx
     INNER JOIN NewIm
     ON NewEx.Number = NewIm.[7]
     SET NewEx.Response = [4] ****

根据我对 T-SQL 的理解,这应该做同样的事情。

UPDATE NewEx 
SET  NewEx.Response = NewIm.[4] 
FROM NewEx
INNER JOIN NewIm ON NewEx.Number = NewIm.[7]

**** 我不明白您不必为 Access 中的联接指定表名,但这完全有效。

我有一个附带问题,是否有任何机器辅助方式来转换这些查询?我从 Access 中遇到的很多东西基本上是不可读的。

【问题讨论】:

  • 我不明白带星号的注释 - 为连接指定了表名 NewEx INNER JOIN NewIm

标签: sql sql-server ms-access


【解决方案1】:

您重写的查询很好。您可能会引入表别名并使用JOIN 以获得更简洁的版本:

UPDATE ne
    SET Response = ni.[4] 
FROM NewEx n JOIN
     NewIm ni
     ON ne.Number = ni.[7];

【讨论】:

    猜你喜欢
    • 2015-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多