MySQL将两个索引合并为一个

时间:2011-12-20 22:30:01

标签: mysql indexing

我想知道是否有某种方法可以将两个索引组合成第三个来制作序列号...例如: 如果我想创建音乐数据库 我会从表艺术家开始 -artist_name -artist_id(主键) -....

然后与表相册 -album_name -album_id(P.k。) -...

然后用歌曲表 -歌名 -song_id

假设艺术家将是带有artist_id的X - 12345 然后专辑Y与album_id - 678 我希望song_id为12345.678.xxx(仅用于想法的可视化点,artist_id和album_id的长度将保持不变)

我的问题是。有可能吗? 因为我觉得这会更好地搜索数据库。 不仅仅是在我的song_id中,我有关于艺术家和专辑的完整信息(我不需要使用外键),它应该加快对同一专辑或同一艺术家的其他专辑中的歌曲的任何查询。一个索引中的所有信息只需要某种提取。

或许它只是我对MySQL的最小知识? :)

1 个答案:

答案 0 :(得分:0)

将artist_id和album_id保留为歌曲表中的单独列,并包含正确的外键关系和索引。这将为您提供数据完整性和查询性能的最佳组合。