Multiple Rows Using STRING_AGG


Using STRING_AGG

STRING_AGG kullanmanın en basit yolu, ifade argümanı ve bir ayırıcı için sütun adı sağlamaktır. İfade argümanı herhangi bir veri türünü alır ve birleştirirken VARCHAR veya NVARCHAR’a dönüştürülür, ancak ayırıcı argüman bir VARCHAR veya NVARCHAR olmalıdır. İşte bir örnek:

Başlamak için, çekme sütunlarıyla bir tablo oluşturalım. Bu örnekte, bir sütunu Şehir, diğeri ise MüşteriAdı olarak adlandırdım.

/* Lets create a table */
Create Table CustomerNames (
    City Varchar(50),
    CustomerName Varchar(50)
)
GO
 
/* and insert data in it */
INSERT INTO CustomerNames
    SELECT 'Los Angeles', 'Russell' UNION ALL
    SELECT 'Long Beach', 'Tiffany' UNION ALL
    SELECT 'Fremont', 'Wayne' UNION ALL
    SELECT 'Los Angeles', 'Eugene' UNION ALL
    SELECT 'Fremont', 'Theresa' UNION ALL
    SELECT 'Long Beach', 'Willie' UNION ALL
    SELECT 'Los Angeles', 'Hannah' UNION ALL
    SELECT 'Fremont', 'Sean' UNION ALL
    SELECT 'Long Beach', 'Terry' UNION ALL
    SELECT 'Long Beach', 'Jeremy' UNION ALL
    SELECT 'Los Angeles', 'Megan' UNION ALL
    SELECT 'Los Angeles', 'Lauren'
GO
 
/* Verify the data */
Select * from CustomerNames
GO
 
/* Result */
City          CustomerName
--------------------------
Los Angeles   Russell
Long Beach    Tiffany
Fremont       Wayne
Los Angeles   Eugene
Fremont       Theresa
Long Beach    Willie
Los Angeles   Hannah
Fremont       Sean
Long Beach    Terry
Long Beach    Jeremy
Los Angeles   Megan
Los Angeles   Lauren

STRING_AGG Fonksyion Örneği:

Select
    STRING_AGG(CustomerName, ',') As AllCustomers 
    From CustomerNames
GO
 
/* Result */
AllCustomers
------------------------------------------------------------------------
Russell,Tiffany,Wayne,Eugene,Theresa,Willie,Hannah,Sean,Terry,Jeremy,Megan,Lauren
 
(1 row affected)

 

No comment

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.