0

クエリに苦労しています。

私は2つのテーブルを持っています:

CREATE TABLE Playlist(
    id INTEGER GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
    name VARCHAR(255) NOT NULL,
);



CREATE TABLE PlaylistMovies(
    mid INTEGER FOREIGN KEY REFERENCES Movie(movieid) ON DELETE CASCADE,
    pid INTEGER FOREIGN KEY REFERENCES Playlist(id) ON DELETE CASCADE,   
    PRIMARY KEY (mid, pid)
);

映画が最も多いプレイリストを見つけたい(mid`sを数えた)。

この問題にどのように取り組むか?

4

1 に答える 1

1

これを試してください:

クエリ:

select top 1 pl.pid, p.name,
         count(pl.mid) as count_id
  from playlistmovies pl
  left join playlist p
  on p.id = pl.pid
  group by pl.pid, p.name
  order by count_id desc
;

結果:

| PID | NAME | COUNT_ID |
-------------------------
|   1 |   p1 |        5 |
于 2013-01-12T15:27:34.863 に答える