2012-10-16 43 views
10

我有一個表,一列IDSERVICE_TYPE_TEXT,並與列SQL加盟,越來越多列同名

ID, SERVICE_TYPE ... 

和許多其他列的另一個表。

第二張表中的SERVICE_TYPE包含第一張表中的ID。我想查詢,所以我可以從第一個表中獲得SERVICE_TYPE_TEXT,第一個表與第二個表中給出的ID相匹配。

我試圖加入,並與ASID設定不同的名稱,但總是在查詢結果的最後我得到的第一個表的原始ID與列名ID,以及我所定義的名稱在AS中。

有關如何從第一張桌子上取得身份證以防止離開的任何建議? :)

+1

請發表你的SELECT語句中的問題,可能是你在哪裏選擇列名 – Habib

+0

發佈與樣本表結構的實際查詢將definitly幫助這裏的一部分。 –

+0

也許你應該刪除幾乎可以肯定在你的'SELECT'子句中的'*'(當然,如果我們能夠看到*你的查詢,這將更容易診斷) –

回答

11

嘗試這樣的事情,

SELECT a.ID AS ServiceID, 
     a.Service_Type_Text, 
     b.ID AS table2ID, 
     b.Service_Type 
FROM table1 a 
     INNER JOIN table2 b 
      ON a.ID = b.Service_Type 
+0

'table2'你想要什麼? –

2

TRY

SELECT a.ID AS ServiceID, 
     a.Service_Type_Text, 
     b.ID AS table2ID, 
     b.Service_Type 
FROM table1 a 
     INNER JOIN table2 b 
      ON a.ID = b.Service_Type AND b.ID='YOUR_ID'; 
7

設置您的查詢,以便它返回第二個表從第一的所有數據,但只有所需的字段(列) 。
事情是這樣的:

SELECT TAB1.SERVICE_TYPE_TEXT, TAB2.* 
FROM TAB1 
INNER JOIN 
TAB2 
ON TAB1.ID = TAB2.SERVICE_TYPE 
+0

工作,完美thanx傢伙! – Aune