Php SQL从一个表基于另一个表获取信息';s行值,反之亦然
我在一个MySQL数据库中为音乐下载编制索引,总共只能有两个数据库。我决定按如下方式组织数据库: 数据库:Php SQL从一个表基于另一个表获取信息';s行值,反之亦然,php,mysql,sql,pdo,Php,Mysql,Sql,Pdo,我在一个MySQL数据库中为音乐下载编制索引,总共只能有两个数据库。我决定按如下方式组织数据库: 数据库: music > artist >> artistS >> artistR >> genre > album >> album >> artistS >> year > song >> song >> album >> art
music
> artist
>> artistS
>> artistR
>> genre
> album
>> album
>> artistS
>> year
> song
>> song
>> album
>> artistS
我想知道是否有办法输入这些值中的一个,并从所有表格中获取所有结果(例如,我输入“Blues”,我从表格艺术家处获取“Blues”类型的艺术家,从该艺术家处获取专辑,因为该艺术家具有“Blues”类型,以及艺术家专辑中的所有歌曲,因为他们有“布鲁斯”类型
如果您需要信息或澄清,请这样说。将艺术家设置为艺术家表中的主键,将其设置为相册表中的外键,并与相册表中的艺术家列相关联。对album表的album列执行相同的操作,使其成为与album列关联的Song表中的主键,并使其成为外键。然后在所有表中插入数据,确保在外键列中输入的值与其关联的主键相同,例如 艺术家表
Artists = ABC (primary key)
ArtsitR = XYZ
Genre = Blues
Album = PQR (Primary key)
Artists = ABC (foreign key)Same value as in table artist
Year = 1990
相册表中的
Artists = ABC (primary key)
ArtsitR = XYZ
Genre = Blues
Album = PQR (Primary key)
Artists = ABC (foreign key)Same value as in table artist
Year = 1990
歌曲表中的
Song = MNO
Album = PQR (foreign key)Same value as in table album
Artists = KLM
现在使用这个查询
Select artist.Artists,artist.Genre, artist.ArtistR, artist.album,Album.Artists,Album.year,
Song.Song,Song.Artists from artist inner join album on album.Artists = artist.Artists
inner join Song on Song.Album = album.Album where artist.Genre = 'Blues'
希望这将对您有所帮助。您可能需要查看
Join
语句