私は何かが欠けているかもしれませんが、あなたの歌のテーブルからアルバムへの直接的な関係は見られません...
最初に、link_interpret_song テーブルを song テーブルに結合して、個別のアルバムの数を取得することから始めます。ただし、song テーブルのフィールド リストに「No_Album」列と思われるものが表示されませんでした。特定のアルバムに関連付けられているとしか思えません。私はメディアを見ましたが、私にとっては、メディアのタイプ (デジタル、ダウンロード、ビニール、CD) とアルバム テーブルに表示される実際の ID キーのようなものです。
そうは言っても、SONG テーブルにそのような「No_Album」列があると考えています。
select
LIS.No_Interpret,
COUNT( DISTINCT S.No_Album )
from
Link_Interpret_Song LIS
JOIN Song S
on LIS.No_Song = S.No_Song
group by
LIS.No_Interpret;
とはいえ、解釈の詳細が必要な場合は、上記の結果を取得して解釈テーブルに結合します。count() と count(distinct) コンテキストの例として、個別のアルバム数と合計曲数の両方を実行しました...次のように
select
PreCounts.No_Interpret,
PreCounts.DistinctAlbums,
PreCounts.ActualSongs,
I.Name_Interpret,
I.First_Name,
I.Stage_Name
from
( select
LIS.No_Interpret,
COUNT( DISTINCT S.No_Album ) as DistinctAlbums,
COUNT(*) as ActualSongs
from
Link_Interpret_Song LIS
JOIN Song S
on LIS.No_Song = S.No_Song
group by
LIS.No_Interpret ) as PreCounts
JOIN Interpret I
ON PreCounts.No_Interpret = I.No_Interpret