2014-10-08 66 views
0

例如,movieCopy(cp_id, movie_id), rental(cp_id, Date)電影有一些副本,副本具有唯一的ID。租賃表格代表租用電影拷貝的記錄(不關心只退租一次)。我想查詢哪部電影已全部出租,這意味着電影的複製數量等於出租中可能的cp_id數量。 MYSQL數據庫查詢記錄,其數量等於它在另一個表中的數量

movie `cp_id movie_id    rental cp_id Date 
     101  1       101 2001 
     102  1       102 2001 
     103  1       103 2001 
     104  2       104 2002 
     105  2       106 2002 
     106  3 ` 

我想選擇movie_id,1和3

+1

你能提供一些數據例子嗎?你期望輸出什麼?您使用的是什麼RDMS? (Mysql,mssql,oracel)你試過了什麼? – Arion 2014-10-08 13:29:40

回答

0

根據您所提供的列,這應該工作:

Select movie_id From movie Where movie_id Not Exists (Select Movie_id From movie Where cp_id Not Exists (Select distinct cp_id From rental Where date between date1 and date2)

日期1和date2都只是佔位你想過濾它們的情況。

+0

有一些錯誤,例如「哪裏的cp_id不存在」。不過,給我一個解決問題的想法 – cow12331 2014-10-12 03:25:22

相關問題