enter image description here我有一个看起来像这样的表:
CREATE TABLE [dbo].[Devices]
(
[Device_ID] [nvarchar](10) NOT NULL,
[Series_ID] [int] NOT NULL,
[Start_Date] [date] NULL,
[Room_ID] [int] NOT NULL,
[No_Of_Ports] [int] NULL,
[Description] [text] NULL
);
我想在表格视图中显示此表,但是我不想显示[Series_ID]
列,而是要显示3列Series_Name
,Brand_Name
和Type_Name
另外3列,而不是显示[Room_ID]
列,我想显示另外3列的3列Site_Name
,Floor_Name
,Room_Name
我可以通过6个以上的内部联接来做到这一点。我是SQL的初学者,我想知道在性能上在一条语句中具有很多内部联接的权利吗?
答案 0 :(得分:0)
根据您的查询解释,我假设它将是2个内部联接,而不是6个。
如果Series_Name,Brand_Name和Type_Name位于一个表中,且 Series_Id 为 ForeignKey ,那么您将需要一个联接。
类似地,如果Site_Name,Floor_Name,Room_Name位于以 Room_ID 作为ForeignKey的一个表中,那么您将需要另一个innjer联接。
同样,在不了解其他引用表的表结构的情况下,很难确定连接的确切数目。