Sql 加入3个csv文件

Sql 加入3个csv文件,sql,excel,vba,csv,join,Sql,Excel,Vba,Csv,Join,我需要从3个不同的CSV文件(Adres.CSV、ID.CSV和Regios.CSV)中检索数据,并将其合并到Excel表格中 这个SQL语句工作得很好 StrSQL = "SELECT ID.[ID], Adres.[Naam], Adres.[Adres], Adres.[Plaats] " _ & "FROM Adres.CSV Adres INNER JOIN ID.CSV ID ON Adres.[Naam] = ID.[Naam];" 以及 StrSQL

我需要从3个不同的CSV文件(Adres.CSV、ID.CSV和Regios.CSV)中检索数据,并将其合并到Excel表格中

这个SQL语句工作得很好

StrSQL = "SELECT ID.[ID], Adres.[Naam], Adres.[Adres], Adres.[Plaats] " _
         & "FROM Adres.CSV Adres INNER JOIN ID.CSV ID ON Adres.[Naam] = ID.[Naam];"
以及

StrSQL = "SELECT Adres.[Naam], Adres.[Adres], Adres.[Plaats], Regio.[Regio] " _
         & "FROM Adres.CSV Adres INNER JOIN Regios.CSV Regio ON Adres.[Plaats] = Regio.[Plaats];"  
但当我把它们结合起来

StrSQL = "SELECT ID.[ID], Adres.[Naam], Adres.[Adres], Adres.[Plaats], Regio.[Regio] " _
         & "FROM Adres.CSV Adres " _
         & "INNER JOIN Regios.CSV Regio ON Adres.[Plaats] = Regio.[Plaats]" _
         & "INNER JOIN ID.CSV ID ON Adres.[Naam] = ID.[Naam];"
我收到一条错误消息,表示缺少操作员


我忽略了什么?

这里有两个问题:

  • 第3行和第4行之间缺少空格
  • JET/ACE SQL要求在执行多个联接时使用括号
  • 这将修复您看到的sql错误:

    StrSQL = "SELECT ID.[ID], Adres.[Naam], Adres.[Adres], Adres.[Plaats], Regio.[Regio] " _
             & "FROM (Adres.CSV Adres " _
             & "INNER JOIN Regios.CSV Regio ON Adres.[Plaats] = Regio.[Plaats]) " _
             & "INNER JOIN ID.CSV ID ON Adres.[Naam] = ID.[Naam];"
    


    字符串的计算结果为
    …Regio.[Plaats]internal JOIN ID.CSV…
    。缺少空白会导致sql解析器错过第二个
    内部联接

    这里有两个问题:

  • 第3行和第4行之间缺少空格
  • JET/ACE SQL要求在执行多个联接时使用括号
  • 这将修复您看到的sql错误:

    StrSQL = "SELECT ID.[ID], Adres.[Naam], Adres.[Adres], Adres.[Plaats], Regio.[Regio] " _
             & "FROM (Adres.CSV Adres " _
             & "INNER JOIN Regios.CSV Regio ON Adres.[Plaats] = Regio.[Plaats]) " _
             & "INNER JOIN ID.CSV ID ON Adres.[Naam] = ID.[Naam];"
    


    字符串的计算结果为
    …Regio.[Plaats]internal JOIN ID.CSV…
    。这种空白的缺失导致sql解析器错过了第二个
    内部联接

    恐怕我们还没有做到,我再次收到一条缺少运算符的消息:我忘记了JET sql在执行多个联接时需要使用括号。我更新了我的答案,不确定括号是否在正确的位置。试试看。啊,一百万,就这样!我一定要把它写在某个地方!!!很乐意帮忙。请考虑接受这个答案,如果它帮助你:-恐怕我们还没有到那里,我再次得到一个失踪的运营商信息:我忘记了JET SQL要求你使用括号当做多个连接。我更新了我的答案,不确定括号是否在正确的位置。试试看。啊,一百万,就这样!我一定要把它写在某个地方!!!很乐意帮忙。如果你有帮助,请考虑接受这个答案: