Sar*_*ara 70 sql ms-access select join syntax-error
当我在我的SQL语句中只有一个内连接时,它完美地工作.我尝试加入第二个表,现在我收到一个错误,指出存在语法错误(缺少运算符).这有什么不对?
adsFormView.SelectCommand = "SELECT * FROM [tableCourse] INNER JOIN [tableGrade] ON [tableCourse].[grading] = [tableGrade].[id] INNER JOIN [tableCourseType] ON [tableCourse].[course_type] = [tableCourseType].[id] WHERE [prefix]='" & myPrefix & "' AND [course_number]='" & myCourseNum & "'"
Run Code Online (Sandbox Code Playgroud)
Mar*_*c B 153
对于多表连接,您必须将多余的连接嵌套在括号中:
SELECT ...
FROM ((origintable
JOIN jointable1 ON ...)
JOIN jointable2 ON ...)
JOIN jointable3 ON ...
Run Code Online (Sandbox Code Playgroud)
基本上,对于你加入第一个的每个额外表,你需要在原始'FROM'表之前有一个括号,在匹配的JOIN'on'子句上需要一个结束括号.
mwo*_*e02 22
MS Access(特别是Jet/ACE)需要具有多个连接的括号.尝试:
adsFormView.SelectCommand = _
" SELECT * FROM ([tableCourse] " & _
" INNER JOIN [tableGrade] " & _
" ON [tableCourse].[grading] = [tableGrade].[id]) " & _
" INNER JOIN [tableCourseType] " & _
" ON [tableCourse].[course_type] = [tableCourseType].[id] " & _
" WHERE [prefix]='" & myPrefix & "'" & _
" AND [course_number]='" & myCourseNum & "'"
Run Code Online (Sandbox Code Playgroud)