sql自联接或以其他方式检索指定列的匹配行

时间:2013-12-04 15:14:11

标签: sql sql-server select join self-join

我想检索表格“Spots”中的数据,其中Spot是同一小时的相同StationCode,SalesHouse,ProgramName,Day,date和timeHour

E.g。我的数据如下表所示。

Data in table Spot as below

我想要一个可以检索数据的查询,如下所示:

output data

任何代码都会非常有用。

我尝试使用自我加入,但截至目前尚未成功。

谢谢。

1 个答案:

答案 0 :(得分:1)

SELECT s.*
FROM Spots s
INNER JOIN
(SELECT StationCode, SalesHouse, ProgramName, day, Date, TimeHour
FROM Spots
GROUP BY StationCode, SalesHouse, ProgramName, day, Date, TimeHour
HAVING COUNT(*) > 1
) j
ON s.StationCode = j.StationCode
AND s.SalesHouse = j.SalesHouse
AND s.ProgramName = j.ProgramName
AND s.day = j.day
AND s.Date = j.Date
AND s.TimeHour = j.TimeHour