我有一個存儲基本站點信息的表,另一個存儲站點地址的表以及第三個電話表。我的電話表包含電話號碼和號碼類型。根據第三列將信息分類爲兩個新列的SQL查詢
我想要做的是獲取我的網站信息,主要聯繫電話號碼和傳真號碼。到目前爲止,我的發言是這樣的:
SELECT site.isiteid,
site.iclientid,
csitecode,
csitename,
binactive,
caddress1,
caddress2,
ccity,
cstateid,
czip,
icountryid,
cattention,
cemail,
cnumber,
cextension
FROM dbo.site
INNER JOIN dbo.address
ON dbo.site.isiteid = dbo.address.isiteid
AND (site.isiteid = 2)
LEFT JOIN dbo.phone
ON dbo.site.isiteid = dbo.phone.isiteid
AND (dbo.phone.iphtypeid = 1)
這讓我所有的,我需要除傳真號碼信息(dbo.phone.iphtypeid = 3)。有沒有辦法給名爲[fax]的結果添加另一列,並在site.isiteid = phone.isiteid和phone.iphtypeid = 3時填充它?因此,最後的4列返回將[cemail][cnumber][cextension][cfax].
議決
謝謝所有三個誰回答。所有的答案都是相似的,所以我選擇了最詳細的解釋。我確實需要將表名添加到cnumber引用和cextension中以避免含糊不清。感謝您的回覆!
難道你不需要在ON子句中使用'f'別名嗎? – Tadmas
別名手機作爲F忽略別名...我不知道()也是必要的。 – Zane
@Tadmas修復答案。感謝您指出。 – TTeeple