PATH मोड का उपयोग XML को 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>
आउटपुट एलीमेंट-सेंट्रिक एक्सएमएल है, जहाँ परिणामस्वरूप पंक्तियों में प्रत्येक कॉलम वैल्यू को एक पंक्ति तत्व में लपेटा जाता है। चूंकि सेलेक्ट क्लॉज कॉलम नामों के लिए किसी भी एलियास को निर्दिष्ट नहीं करता है, इसलिए उत्पन्न चाइल्ड एलिमेंट नेम सेलेक्ट क्लॉज में संबंधित कॉलम नामों के समान हैं।
पंक्तियों में प्रत्येक पंक्ति के लिए एक टैग जोड़ा जाता है।
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>
चरण 2 के लिए: यदि आप एक शून्य-लंबाई स्ट्रिंग निर्दिष्ट करते हैं, तो रैपिंग तत्व उत्पन्न नहीं होता है।
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
चरण 4 में हम मानों को समेट रहे हैं।
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
चरण 6 में हम आईडी द्वारा तारीख को समूहीकृत कर रहे हैं।
STUFF (source_string, start, length, add_string) पैरामीटर या तर्क source_string संशोधित करने के लिए स्रोत स्ट्रिंग। position लंबाई वर्णों को हटाने के लिए source_string में स्थिति जोड़ें और फिर add_string डालें। लंबाई source_string से हटाने के लिए वर्णों की संख्या। add_string वर्णों का अनुक्रम source_string को प्रारंभ स्थिति में सम्मिलित करने के लिए।
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 |
-----------------------------------