2013-04-27 94 views
0

我目前使用C#和Mysql(XAMPP)。我有3個表,如下圖所示:C#MySQL連接3個表

tblILearnQuestion : IlearnQuestionId, Question 

tblILearnAnswer : ILearnAnswerId, ILearnQuestionId, StudentId, dateSubmited 

tblILearnMarks : ILearnMarkId, ILearnAnswerId, Comments, mark 

我需要一個查詢得到以下數據:question, studentid , mark and comment。我曾經試過,但它不工作:

SELECT * FROM tblIlearnQuestion 
INNER JOIN tblilearnanswer ON 
    tblilearnquestion.ilearnquestionid = tblilearnanswer.ilearnquestionid 
INNER JOIN ilearnmarks ON 
    tblilearnanswer.ilearnanswerid = tblilearnmarks.ilearnanswerid 

它說一些列不存在,我檢查,我做了正確的名字列,因爲它是在我的數據庫。

+0

這可能是從你前面的問題,說不同的第三個表的名字,但如果它不是發佈確切的錯誤信息。 – jurgenreza 2013-04-27 22:09:54

回答

2

看起來你在第二次連接中的表名錯了。你寫到你的表名是tblILearnMarks,但在查詢中使用了ilearnmarks。正如你可以看到tbl前綴丟失。

1

你的語法和連接有點關係。這應該整頓的事情了:

select * 
from tblIlearnQuestion 
    inner join tblilearnanswer on tblilearnquestion.ilearnquestionid = tblilearnanswer.ilearnquestionid 
    inner join tblilearnmarks on tblilearnmarks.ilearnanswerid = tblilearnanswer.ilearnanswerid