Mode PATH digunakan dalam menghasilkan XML dari kueri SELECT
1. SELECT
ID,
Name
FROM temp1
FOR XML PATH;
Ouput:
<row>
<ID>1</ID>
<Name>aaa</Name>
</row>
<row>
<ID>1</ID>
<Name>bbb</Name>
</row>
<row>
<ID>1</ID>
<Name>ccc</Name>
</row>
<row>
<ID>1</ID>
<Name>ddd</Name>
</row>
<row>
<ID>1</ID>
<Name>eee</Name>
</row>
Outputnya adalah elemen-sentris XML di mana setiap nilai kolom dalam rowset yang dihasilkan dibungkus dalam elemen baris. Karena klausa SELECT tidak menentukan alias untuk nama kolom, nama elemen anak yang dihasilkan sama dengan nama kolom yang sesuai dalam klausa SELECT.
Untuk setiap baris dalam rowset, sebuah tag ditambahkan.
2.
SELECT
ID,
Name
FROM temp1
FOR XML PATH('');
Ouput:
<ID>1</ID>
<Name>aaa</Name>
<ID>1</ID>
<Name>bbb</Name>
<ID>1</ID>
<Name>ccc</Name>
<ID>1</ID>
<Name>ddd</Name>
<ID>1</ID>
<Name>eee</Name>
Untuk Langkah 2: Jika Anda menentukan string panjang nol, elemen pembungkus tidak diproduksi.
3.
SELECT
Name
FROM temp1
FOR XML PATH('');
Ouput:
<Name>aaa</Name>
<Name>bbb</Name>
<Name>ccc</Name>
<Name>ddd</Name>
<Name>eee</Name>
4. SELECT
',' +Name
FROM temp1
FOR XML PATH('')
Ouput:
,aaa,bbb,ccc,ddd,eee
Pada Langkah 4 kita menggabungkan nilai-nilai.
5. SELECT ID,
abc = (SELECT
',' +Name
FROM temp1
FOR XML PATH('') )
FROM temp1
Ouput:
1 ,aaa,bbb,ccc,ddd,eee
1 ,aaa,bbb,ccc,ddd,eee
1 ,aaa,bbb,ccc,ddd,eee
1 ,aaa,bbb,ccc,ddd,eee
1 ,aaa,bbb,ccc,ddd,eee
6. SELECT ID,
abc = (SELECT
',' +Name
FROM temp1
FOR XML PATH('') )
FROM temp1 GROUP by iD
Ouput:
ID abc
1 ,aaa,bbb,ccc,ddd,eee
Pada Langkah 6 kami mengelompokkan tanggal dengan ID.
STUFF (source_string, start, length, add_string) Parameter atau Argumen source_string String sumber untuk dimodifikasi. mulai Posisi di source_string untuk menghapus karakter panjang dan kemudian masukkan add_string. length Jumlah karakter yang akan dihapus dari source_string. add_string Urutan karakter untuk dimasukkan ke dalam source_string di posisi awal.
SELECT ID,
abc =
STUFF (
(SELECT
',' +Name
FROM temp1
FOR XML PATH('')), 1, 1, ''
)
FROM temp1 GROUP by iD
Output:
-----------------------------------
| Id | Name |
|---------------------------------|
| 1 | aaa,bbb,ccc,ddd,eee |
-----------------------------------