我有一個名為 TBL 的表,它有一個 ID、代碼、日期
當我使用此查詢時:
SELECT * FROM TBL
WHERE TBL.id=“1527”
我要回來了
| ID | 代碼 | 日期 |
|---|---|---|
| 1527 | 26181 | 16/03/21 |
| 1527 | 15182 | 05/09/20 |
我怎樣才能把它變成這個?(按查詢)
| ID | 代碼 |
|---|---|
| 1527 | 26181,15182 |
很高興得到任何幫助
uj5u.com熱心網友回復:
您可以使用STRING_AGG
SELECT Id,STRING_AGG(code,',') WITHIN GROUP ( ORDER BY Id ASC) AS
Code FROM tbl
GROUP BY Id
另外,你可以試試這個:
SELECT id
,STUFF((SELECT ', ' CAST(code AS VARCHAR(10)) [text()]
FROM tbl
WHERE id= t.id
FOR XML PATH(''), TYPE)
.value('.','NVARCHAR(MAX)'),1,2,' ') List_Output
FROM tbl t
GROUP BY id
uj5u.com熱心網友回復:
使用此代碼
SELECT DISTINCT
tbl.id,
STUFF((SELECT ' , ' tb.code
FROM TBL tb
WHERE tb.id = 1572
ORDER BY code
FOR XML PATH('')), 1, 1, '') [code]
FROM TBL tbl
GROUP BY tbl.id, tbl.code
ORDER BY 1
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/351710.html
標籤:sql sql-server
上一篇:嘗試使用WebClient將空正文傳遞給POST端點
下一篇:如何避免重復相同的查詢?
