我有一个任务是为广播节目制作数据库,我遇到了查询问题。我做了一个电台节目表:
CREATE TABLE song_show(
id INT NOT NULL,
name TINYTEXT NOT NULL,
description MEDIUMTEXT NOT NULL,
start_date datetime not null,
end_date DATETIME NOT NULL,
song_idsong INT NOT NULL,
moderator_idmoderator INT NOT NULL
);
现在我想在桌子上插入一首以上的歌曲,因为它应该是MTV深夜演出中的一首,他们只播放歌曲。如果它有帮助,我会发布歌曲表。
对不起,我的问题听起来很模糊。我的最终目标是创建(插入)具有不同数量歌曲的5个表格并进行查询,向我显示哪些歌曲显示的歌曲比平均值更多。
答案 0 :(得分:0)
您正在寻找多对多关系。你想要有另一张歌曲表和第三张表(show_songs
)来将这些歌曲链接到节目。
CREATE TABLE songs (
id INT NOT NULL PRIMARY KEY,
...
)
CREATE TABLE show_songs (
song_id INT NOT NULL,
show_id INT NOT NULL
)
现在,如果您想知道任何列表中有多少首歌曲(如您的问题评论中所述),您可JOIN
song_show
show_songs
表格,{{1}并计算结果。