2012-12-18 57 views
1
SELECT eventID, 
     eventRedacteur, 
     eventEvenement, 
     eventGenreId, 
     eventDatum, 
     eventLocatieId, 
     eventLocatieNaam, 
     eventPlaatsId, 
     eventBijzonderheden, 
     eventBezoekers, 
     lokId, 
     lokNaam, 
     lokUrl, 
     pltsId, 

     (SELECT pltsNaam 
     FROM tblAgendaPlaatsen 
     WHERE pltsId=tblAgendaPunten.eventPlaatsId) AS eventPlaatsNaam, 

     (SELECT genreNaam 
     FROM tblAgendaGenre 
     WHERE genreId=tblAgendaPunten.eventGenreId) AS eventGenre, 
     lokadres, 
     lokhuisnr 
FROM tblAgendaPunten 
LEFT JOIN tblAgendaLocaties ON eventLocatieId=tblAgendaLocaties.lokId 

我得到一個不支持連接的錯誤。sql語句訪問sql

我也嘗試在Access中重製SQL,但沒有運氣。

任何人都可以幫忙嗎?

+1

確定錯誤與此查詢有關嗎?你能否用* exact *錯誤信息更新你的文章? –

+1

嘗試在連接的ON子句中指定表名:ON tblAgendaPunten.eventLocatieId = tblAgendaLocaties.lokId' –

+0

此外,我不認爲Access支持在包含子查詢的表達式中擁有多個記錄。你可能需要類似'(SELECT First(pltsNaam)FROM tblAgendaPlaatsen WHERE pltsId = tblAgendaPunten.eventPlaatsId)AS eventPlaatsNaam' –

回答

0

你或許應該更換你的子查詢與聯接:

SELECT eventID, 
    eventRedacteur, 
    eventEvenement, 
    eventGenreId, 
    eventDatum, 
    eventLocatieId, 
    eventLocatieNaam, 
    eventPlaatsId, 
    eventBijzonderheden, 
    eventBezoekers, 
    lokId, 
    lokNaam, 
    lokUrl, 
    pltsId, 

    pltsNaam, 

    genreNaam, 

    lokadres, 
    lokhuisnr 
FROM ((tblAgendaPunten 
LEFT JOIN tblAgendaLocaties 
    ON tblAgendaPunten.eventLocatieId = tblAgendaLocaties.lokId) 
LEFT JOIN tblAgendaPlaatsen 
    ON tblAgendaPunten.eventPlaatsId = tblAgendaPlaatsen.pltsId) 
LEFT JOIN tblAgendaGenre 
    ON tblAgendaPunten.eventGenreId = tblAgendaGenre.genreId 

注意周圍的每個嵌套加入括號。

+0

這可能應該是對原始問題的評論,但我把它作爲顯示格式化SQL的答案。 –