這是一個有客戶端ID爲電話表需要解決方案。 2行到1行SQL Server 2008中
(ClientID int Primary key,
FName varchar(25),
LName varchar(25),
HomeAddress varchar(50))
CREATE TABLE Telephone
(TelephoneID tinyint IDENTITY(1,1)Primary key,
TelephoneNo int,
ClientID int foreign key references Client(ClientID))
,所以我的2規範化表爲我的客戶表中的值..
ClientID | FName | LName | HomeAddress
1 marvin Biu p.guevarra st.
2 harry sendon cali st.
,進入我的電話表..
TelephoneID | TelephoneNo | ClientID
1 1234567 1
2 7654321 1
3 2222222 2
,因爲它可能是一個客戶端有多個電話沒有 所以我想變成這個樣子。 。
ClientID | FName | LName | HomeAddress | Telephones
1 marvin Biu p.guevarra st. 1234567, 7654321
2 harry sendon cali st. 2222222
我只能拿出這樣
select distinct lname, CAST(telephoneno AS VARCHAR(10)) + ',' + CAST(telephoneno AS VARCHAR(10)) as Telephones
from telephone
left join client
on client.clientid = telephone.clientid
弄成這個樣子的代碼..
LName | Telephones
Biu 1234567, 1234567
Biu 7654321, 7654321
sendon 2222222
請任何人的幫助,其確定該表中結束了簡單的形式如上所示, 我真的希望1234567 telephoneno加入與7654321 telephoneno昏迷之間的電話列與一個Lname「Biu」列。這使得1排。 :/
可以請您給我解釋一下你怎麼做的,什麼是XML路徑和T和你放? –
@MharveenBiu。對於XML,這是如何獲得串聯字符串:http://technet.microsoft.com/en-us/library/ms190922(v=sql.110).aspx。 t和c只是表別名 – EricZ