2

スキーマ

Movie(title, year, director, budget, earnings)
Actor(stagename, realname, birthyear)
ActedIn(stagename, title, year, pay)
CanWorkWith(stagename, director)

複数回使用されている映画のタイトルを探す (SQL Robot DEATH MACHINE 2001、2002、2039)

SELECT M.title
FROM Movie A
LEFT JOIN Movie M ON M.title = A.title AND A.year <> A.year
WHERE M.title IS NULL

そのため、別の年に使用された別のタイトルが見つかると、映画のタイトルが表示されます

4

3 に答える 3

1

SQL 2008r2 で、映画がタイトル、年、監督に基づいて一意であると仮定すると、次のようになります。

;with cte as (
    Select *, count(*) over(partition by Title) dups
    From movie
)
Select * 
From cte
Where dups> 1

複数回使用されたすべての映画のタイトルを返します。同年同タイトルの映画に限定したい場合は、パーティションbyに追加するだけ。

于 2012-06-14T03:36:44.193 に答える
1
SELECT
    title
FROM
    Movie
GROUP BY
    title
HAVING
    COUNT(*) > 1
于 2012-06-14T02:43:40.787 に答える
0
Select M.Title
From Movie As M
Where Exists    (
                Select 1
                From Movie As M1
                Where M1.Title = M.Title
                    And M1.Year <> M.Year
                )
于 2012-06-14T04:45:28.903 に答える