我使用SQL Server 2008 R2的快速發展,並在VS2010網站C#SQL服務器:從另一個表(ASP.net)一行中的每個id來獲取名稱
我的表是這樣的:
表1
我想寫一個查詢,將選擇從表1中的所有行,但而不是顯示choice1
或(2..3)的ID,它會抓住從表他們的名字2
我該怎麼辦?
在此先感謝
我使用SQL Server 2008 R2的快速發展,並在VS2010網站C#SQL服務器:從另一個表(ASP.net)一行中的每個id來獲取名稱
我的表是這樣的:
表1
我想寫一個查詢,將選擇從表1中的所有行,但而不是顯示choice1
或(2..3)的ID,它會抓住從表他們的名字2
我該怎麼辦?
在此先感謝
你可以通過加入同一個表三個時間從這兩表中的數據。
SELECT table2.name AS choice1name, table2_1.name AS choice2name, table2_2.name AS choice3name
FROM table1 INNER JOIN
table2 ON table1.choice1 = table2.id INNER JOIN
table2 AS table2_1 ON table1.choice2 = table2_1.id INNER JOIN
table2 AS table2_2 ON table1.choice3 = table2_2.id
看起來你需要一個內部連接。幾個星期前我也遇到了同樣的情況,我被提到了我給你的鏈接。 看看這裏找出哪一個會爲你工作。 here或這一個 Inner joins
我不與表2的id 加入表1的ID,但'table1.choice1到table2.id' 然後同樣的方式...'table1.choice2到table2.id' 和'.. table1.choice3到table2.id' 所以它是一種多對一的關係 –
你想要什麼。你是否想在名稱1,選擇2和選擇3的位置顯示名稱? – Raghubar
我已根據您的要求編輯了我的代碼。 – Raghubar