2011-05-06 53 views
0

我有這種類型的查詢:如何解決錯誤:多部分標識符無法綁定

Select addMovies.MovieName, GivenBy.UserName, TimeOfReview, Review 
    FROM Users, Reviews, given, addMovies 
    WHERE Reviews.ReviewId = given.ReviewId AND GivenBy.UserName = addMovies.UserName 
    ORDER BY TimeOfReview DESC 

如果單個表的模式是形式的

Users (UserName, Password, EmailId, Loc, Info) 
    Reviews (ReviewId, ReviewRating, Review) 
    Given (ReviewId, UserName) 
    addMovies (MovieName, UserName) 

我想獲得由特定用戶給出評論,但它給我的錯誤:

多部分標識符「GivenBy.UserName」無法綁定。

無法綁定多部分標識符「GivenBy.UserName」。

任何人都可以請讓我知道什麼是錯的,我能做些什麼來糾正?

+0

不應該是Given.UserName?是名爲GivenBy而非Given的表格? – 2011-05-06 09:37:30

+0

表(或表引用)'GivenBy'不出現在語句的FROM部分中。 – Bjoern 2011-05-06 09:38:37

+0

謝謝,我也有一個給定的表,我已經把它弄得一團糟。抱歉! – QPTR 2011-05-06 09:42:48

回答

0

不應該是Given.UserName?是名爲GivenBy而非Given的表格?

+0

是的,感謝您的回覆,我把這個錯誤,現在想通了:) – QPTR 2011-05-08 06:00:08

0

GivenBy不在您FROM條款(given是)也不是定義爲一個別名的表是在從子句

+0

感謝您的回覆,當我寫這個問題時,我有點心慌,但我用INNER JOINS做了這個查詢,它完美的工作,謝謝! – QPTR 2011-05-08 04:47:46

0

您沒有一個名爲GivenBy的表可供選擇。可能應該是:

Select addMovies.MovieName, given.UserName, TimeOfReview, Review  
FROM Users, Reviews, given, addMovies  
WHERE Reviews.ReviewId = given.ReviewId AND given.UserName = addMovies.UserName   
ORDER BY TimeOfReview DESC 
+0

感謝您的回覆,我用這個查詢,而不是我想要做的,它完美的作品:選擇前3名MovieName,TimeOfReview,用戶名,GivenBy.ReviewId,查看 FROM FROM INNER JOIN GivenBy ON given.ReviewId = GivenBy.ReviewId INNER JOIN對評論.ReviewId = given .ReviewId WHERE UserName ='姓名' ORDER BY TimeOfReview – QPTR 2011-05-08 04:52:03

相關問題