我正在使用 Latin1_General_CI_AS
colation的SQL Server 2008。
有人可以帮助我理解如何解决以下错误?
SELECT A.*
FROM table1 AS A
INNER JOIN table2 AS B ON LTRIM(RTRIM('A.PPNO')) = LTRIM(RTRIM('B.PNO'))
WHERE A.OMPID = '1001'
运行此代码时,我会收到此错误:
msg 102,15级,状态1,第1行
的语法不正确
'''。
谢谢
尝试以下:
SELECT A.* FROM table1 AS A
INNER JOIN table2 AS B ON LTRIM(RTRIM(A.PPNO))= LTRIM(RTRIM(B.PNO))WHERE A.OMPID = '1001'
错误表明第1行上有一个问题。看起来您在使用SELECT *
时可能有一个字段的问题。
正确声明您的字段,并确保将它们放在单独的行上,类似的行;
SELECT
A.Field1
,A.Field2
,A.Field3
,A.Field4
FROM table1 AS A
INNER JOIN table2 AS B
ON LTRIM(RTRIM(A.PPNO)) = LTRIM(RTRIM(B.PNO))
WHERE A.OMPID = '1001'
然后再次运行。错误应该告诉您您遇到的哪个字段。可能是字段名称有问题。这就是为什么我们不使用SELECT *
。