2012-11-14 107 views
2

我越來越困惑於如何構建SQL查詢的時候纔來連接兩個表,這樣我以後可以到GridView綁定受其約束。連接兩個表要在一個GridView

基本上我有兩個表,

tablename: family 
__________________________ 
|Status |lastName|firstName| 
|-------|--------|---------| 
|1  |11  |111  | 
|2  |22  |222  | 
|3  |33  |333  | 
'''''''''''''''''''''''''''' 
      + 

tablename: familyStatus 
_____________________ 
|id  | Notes | 
|----------|----------| 
|1   | 1111  | 
|2   | 2222  | 
|3   | 3333  | 
''''''''''''''''''''''' 

      = 

Joined-tables: family+familyStatus [this is what i want] 
____________________________ 
|firstName | lastName |Notes | 
|----------|----------|------| 
|111  | 11  |1111 | 
|222  | 22  |2222 | 
|333  | 33  |3333 | 
'''''''''''''''''''''''''''''' 

什麼你這裏看到的是,狀態從表家庭IDfamilyStatus是相同的密鑰,身份和id會隱藏在gridview上。

Lets just assume for now that this is how i get the family table. 

SELECT Status, firstName, lastName 
FROM family 
WHERE firstName= @fN 
AND lastName = @lN 

我需要在這裏添加什麼,以便來自family表的Notes也被加入?

回答

6

聯接:

SELECT F.firstName, F.lastName, FS.Notes 
FROM family F 
INNER JOIN familyStatus FS 
    ON F.[Status] = FS.id 
WHERE F.firstName= @fN 
AND F.lastName = @lN 
+0

什麼是FS和F? 我想避免在編輯分貝 – Mana

+0

@Mana表我沒有在所有編輯表格,我只是用表的別名,以確定每一列的表。 – Lamak

+0

OKI,沒有帶前使用它,將它在我的MSSQL的查詢幹活? – Mana

1

添加狀態外鍵familyStatus表,請嘗試以下操作:

SELECT firstName, lastName, Notes 
FROM family JOIN familyStatus 
ON family.Status = familyStatus.Status 
WHERE firstName= @fN 
AND lastName = @lN 
+0

您好,感謝您的快速回答,我真的想避免回火表格。 – Mana

+0

您通常不能保證兩個表中的鍵將保持同步和外鍵是連接兩個表的推薦方式。 – IrishChieftain