[英]How do I do this SQL query
以下是我正在使用的表:
電影(mID,標題,年份,導演)
審稿人(身份證,姓名)
評分(rID,mID,星標,ratingDate)
我將使用哪個語句來顯示所有沒有評級的電影。 我是SQL語言的新手,還不太清楚如何做到這一點。 據我所知,這是一個相對簡單的查詢。
SELECT * FROM Movie WHERE Movie.mid NOT IN (SELECT mID FROM Rating)
有三種方法可以做到這一點。 我的首選是Anti-Join,它是一個LEFT JOIN,在聯接的右側帶有一個IS NULL的where子句測試。
SELECT *
FROM
Movie
LEFT JOIN Rating
ON moive.Mid = rating.mid
WHERE
rating.mid is null
從mID不在的電影中選擇*(從評分中選擇mId)
您可以使用NOT EXISTS子句。 Oracle的一個很好的示例是在http://www.dba-oracle.com/sql/t_subquery_not_in_exists.htm上 。 語法可能因數據庫而異
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.