2013-12-12 46 views
-6

是否可以將3個表格數據導入到一個表格中,如果可以,請向我們顯示代碼。是否可以將3個表格數據導入到一個表格中

我有三個表,並顯示所有數據在一起,我必須使用這些連接語句。

select * 
    from [runners 2000-2005] 
    join races on races.race ID = [runners 2000-2005].race ID 
    join results on results.race ID = [runners 2000-2005].race ID 
    where 1=1 

我用比賽ID因爲它是所有表

在公共列所有表連接在一起,但我認爲這將是更好,如果我可以導入從表結果的數據和比賽爲選手2000-2005。製作一張大桌子。

thx我希望這可以幫助保姆我是一個新手。

+2

「請向我們顯示代碼」實際上不是這個網站的內容。您需要詳細說明您目前所知道的情況,所嘗試的內容以及對該主題的基本瞭解 – hammus

+0

絕對是的!細節是不可能給你的模糊和不清楚的問題.....請研究[如何問一個好問題?](http://stackoverflow.com/help/how-to-ask)並擁抱它! –

+0

好吧,我會提供更多的細節 – user3060111

回答

0

如上所述,它有點含糊不清,但你也是JOINING顛倒了表格,因爲我看不到[runners]表格中列出的[race ID],這將意味着你有重複的跑步者和結果與跑步者無關,因爲沒有關係。由於您沒有提供架構,因此我可能也是一種標記方式,所以我正在採用表格模式並使用我期望的東西。

也許嘗試這樣的事情

CREATE TABLE [runners 2000-2005] ([Runner ID] INT, [First Name] NVARCHAR(200), [Last Name] NVARCHAR(200), [Other Details] NVARCHAR(500)) 
CREATE TABLE [races] ([Race ID] INT, [Race Name] VARCHAR(200), [Race Location] VARCHAR(200)) 
CREATE TABLE [results] ([Race ID] INT, [Position] INT, [Runner ID] INT) 

SELECT 
T1.[Race ID] 
, T1.[Race Name] 
, T1.[Race Location] 

, T2.[Runner ID] 
, T2.Position 

, T3.[First Name] 
, T3.[Last Name] 
, T3.[Other Details] 

INTO [all race details 2000-2005] /*Remove this line if you just want a query*/ 
FROM races AS T1 
INNER JOIN results AS [T2] ON T2.[Race ID] = T1.[Race ID] 
INNER JOIN [runners 2000-2005] AS [T3] ON T3.[Runner ID] = T2.[Runner ID] 

SELECT * 
FROM [all race details 2000-2005] 

在使用表的別名只是縮短了查詢,我也發現很容易首先從表中最常見的信息選擇或坐在層次之上,這在我看來是races表。

首先是一場比賽,然後是一些完成比賽順序,然後是比賽中參賽選手的細節。

SELECT...INTO...FROM將創建一個新鮮的表,否則你可以CREATE TABLE...INSERT INTO TABLE.. SELECT由你決定。

+0

thx很多thx我會嘗試這個我希望這篇文章可以幫助別人不只是我thx – user3060111

相關問題