我几乎已经完成了用Sql Server替换我们的应用程序,但是我遇到了一个问题。以下Access查询不适用于Sql Server。如何使此SQL语句与Sql Server一起使用?
SELECT table1.*
FROM table1
INNER JOIN (table2
INNER JOIN table3
ON (table2.custkey = table3.custkey)
AND (table2.sequence = table3.sequence))
ON table1.account = table2.account
WHERE ((LEFT(table2.keyid, 1) = 'B'))
ORDER BY table3.lastname & table3.firstname,
table1.account;
我试过这个声明的多种变体,但一直没能得到它的工作。这个声明的一些帮助将帮助我修改其他几个人。任何帮助,将不胜感激。
另一个评论。在您的ORDER BY上,您正在对派生字段进行排序(即姓氏+名字)。这将使数据库引擎首先组合这两个字段,并对非索引结果进行排序。 你可以改为做一个ORDER BY table3.lastname,table3.firstname, table1.account 这会给你相同的结果,但速度更快。 –