Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

SQL Server:kết hợp nhiều hàng thành một hàng

Có một số phương pháp.

Nếu bạn chỉ muốn trả về giá trị chuỗi tổng hợp, thì đây là một cách tiếp cận tốt và dễ dàng

DECLARE @combinedString VARCHAR(MAX)
SELECT @combinedString = COALESCE(@combinedString + ', ', '') + stringvalue
FROM jira.customfieldValue
WHERE customfield = 12534
    AND ISSUE = 19602

SELECT @combinedString as StringValue 

Điều này sẽ trả về chuỗi kết hợp của bạn.

Bạn cũng có thể thử một trong các phương pháp XML, ví dụ:

SELECT DISTINCT Issue, Customfield, StringValues
FROM Jira.customfieldvalue v1
CROSS APPLY ( SELECT StringValues + ',' 
              FROM jira.customfieldvalue v2
              WHERE v2.Customfield = v1.Customfield 
                  AND v2.Issue = v1.issue 
              ORDER BY ID 
                  FOR XML PATH('') )  D ( StringValues )
WHERE customfield = 12534
    AND ISSUE = 19602


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server Một trình kích hoạt để hoạt động trên nhiều lần chèn hàng

  2. Cách xác định lại các cột được trả về bởi một thủ tục được lưu trữ trong SQL Server

  3. Kết nối với Cơ sở dữ liệu MSSQL bằng Flask-SQLAlchemy

  4. Làm cách nào để có được Chèn id trong MSSQL trong PHP?

  5. Khóa ngoại có thể là NULL và / hoặc trùng lặp không?