1
我有兩個表的數據庫:Users
,Items
在sql server中用一行表示查詢中的一對多數據?
Users
看起來是這樣的:
userId uniqueindentifier
username nvarchar
Items
看起來是這樣的:
userId uniqueidentifier
itemName nvarchar
所以每個用戶可以有幾個項目。
我需要做的是返回用戶的查詢。我可以做這樣的事情:
SELECT * FROM Users JOIN Items on Users.UserId = Items.UserId
WHERE UserId = 1
如果用戶1有2項,查詢將返回這樣的事情:
UserId userName ItemName
1 Oliver Apple
1 Oliver Orange
我想查詢返回是這樣的:
UserId userName ItemNames
1 Oliver Apple, Orange
甚至更好,是這樣的:
UserId userName ItemName1 ItemName2
1 Oliver Apple Orange
有沒有可能做到這一點?我想要做這種方式的原因是因爲,如果我做一個查詢與SELECT TOP 50
,我想回到50個不同的用戶,而不是(例如)18個用戶在50行,每用戶的幾個項目。