数据库表连接未返回正确的结果

时间:2013-10-16 07:23:29

标签: sql database sql-server-2008

我有以下表格:

MovieMaster:

enter image description here

DVDBinSlotInfo:

enter image description here

DVDBinSlotInfo表中可以有重复的movieid。

我只是想通过查询来区分它们,

不为特定的kioskid重复的Movienames和

为特定的kioskid重复的Movienames

为此我做了以下查询:

select MovieName  from MovieMaster where MovieID in(select MovieID from DVDBinSlotInfo 

where KioskID='901' and Status='DVD' ) 

以上是所有movieids

下面的

是针对不同的(不重复的):

select MovieName  from MovieMaster where MovieID in(select distinct MovieID from 

DVDBinSlotInfo where KioskID='901' and Status='DVD' ) 

但不幸的是,两个查询都显示了Movienames,而不是特定的kioskid。

我想为重复的电影节目展示。

例如,在DVDBinSlotInfo中对movieid 10进行三次重新处理,然后它应该在结果中显示其名称三次。

请帮帮我。

1 个答案:

答案 0 :(得分:1)

你需要使用INNER JOIN,(我猜)......

SELECT MovieName from MovieMaster 
INNER JOIN DVDBinSlotInfo ON MovieMaster.MovieId = DVDBinSlotInfo.MovieId
WHERE KioskID='901' and Status='DVD'