如何在Microsoft SQL中联接来自3个不同表的数据

问题描述 投票:0回答:1

如何连接来自3个不同表的数据?

这是我的桌子:

  • 艺术家(ArtistId)
  • 专辑(AlbumId,ArtistId)
  • Track(TrackId,AlbumId)

我希望我的表格包含3列:歌手姓名,专辑标题和曲目名称。而且我需要将结果限制为仅超过60万毫秒的专辑曲目。列表应按歌手姓名的升序排列,然后按专辑名称升序排列,然后按曲目名称升序排列。

这是我到目前为止所得到的:

Select Name
From Artist

Select Title
From Album

Select Name
From Track
Where Milliseconds > '600000'

From Artist join Album on ArtistId = AlbumId
From Album join Track on AlbumId = TrackId

这是我第一次接触SQL,所以请不要过于严格地判断

sql
1个回答
0
投票

假设您的DER是这样的

enter image description here

您的查询可能看起来像这样

select ar.name, 
       al.title, 
       tr.name
from Artist ar
join Album al on ar.id_artist = al.id_artist
join Track tr on al.id_album = tr.id_album 

where miliseconds > '600000'
© www.soinside.com 2019 - 2024. All rights reserved.