基本上我有一个 mysql 数据库,我想创建它包含以下表格:
- 艺术家
- 歌曲
- 相册
一首歌曲只能属于一位艺术家,但是,一首歌曲可以位于多个专辑中。我将如何在我的 mysql 数据库中实现这一点。我已经被困了几天了:(
最佳答案
您正在寻找join table :
albumsong
album -> FOREIGN KEY to album
song -> FOREIGN KEY to song
tracknumber
然后加入查询:
SELECT song.*, albumsong.tracknumber
FROM albumsong
JOIN song ON song.id=albumsong.song
WHERE albumsong.album=(some album id)
ORDER BY tracknumber;
由于某些专辑是合作的,因此您也可能与艺术家/专辑建立多对多关系:
artistalbum
artist -> FOREIGN KEY to artist
album -> FOREIGN KEY to album
关于mysql - mysql 一个字段多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2728819/