我有两张桌子,一张用于音乐,一张用于艺术家。音乐有专辑名称、artistID(外键)和发布日期。Artist有3列,一列PKID,一列乐队名,一列歌手名。如果是乐队,则填写乐队名称,歌手名称为空。反之亦然。
如果bandname 不为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;