私は2つのテーブルを持っています。1つは音楽用、もう1つはアーティスト用です。音楽にはアルバム名、artistID(外部キー)、およびリリースがあります。アーティストには、PKID用、バンド名用、歌手名用の3つの列があります。バンドの場合、バンド名が記入され、歌手名はヌルになります。およびその逆。
バンド名がnullでない場合、またはその逆の場合、バンド名を表示するテーブルビューを作成できないようです。変数を宣言する方法など、さまざまな方法を試しましたが、何もコンパイルされていません。これが私が試した最新のものです。何が悪いのかはある程度理解できますが、@ BandNameを宣言できない場合、どの方向に向かっているのかわかりません。
CREATE VIEW MusicWithArtist AS
IF B.BandName IS NOT NULL
BEGIN
SELECT A.Title, A.ReleaseDate, B.BandName
FROM Music A, Artist B
WHERE A.ArtistID = B.ArtistID
END;
ELSE
BEGIN
SELECT A.Title, A.ReleaseDate, B.SingerName
FROM Music A, Artist B
WHERE A.ArtistID = B.ArtistID
END;