2012-10-02 42 views
0

我有表客戶(ID,姓名)手機(ID,客戶ID,PHONETYPE,電話) 是posssible編寫返回行這樣的查詢:SQL查詢COMBIN從同一個表中的結果

客戶編號,客戶名稱,電話1,電話2,Mobile1,移動電話2

電話1,電話2,Mobile1,移動電話2的電話類型

我試圖

select id as CustomerId, name as CustomerName, phone as Phone1 
from Customers, Phones 
where Customers.id = Phones.customerId and 
Phones.phoneType = N'Phone1' 

回答

1

使用pivot

select * 
from (select id as customerid, name as customername, phonetype, phone 
    from customers inner join phones on customers.id = phones.customerid 
) src 
pivot 
(max(phone) for phonetype in ([phone1],[phone2],[mobile1],[mobile2])) p 
+0

感謝它的工作,但現在我需要sp_dbcmptlevel的設置爲90,是否有任何與此問題? ,如果我想([phone1]或[PH1])是否可行? – Star

+0

這將在2005年的數據庫上工作,是的。您可以像平常一樣重命名結果列。 – podiluska

相關問題