আমার এর মতো একটি এক্সএমএল মান রয়েছে:
<R>
<I>A</I>
<I>B</I>
<I>C</I>
...
</R>
আমি সব কনক্যাটেনেট করতে চান Iমান এবং তাদের একটি একক স্ট্রিং হিসেবে ফিরে ABC...।
এখন আমি জানি যে আমি এক্সএমএল ছড়িয়ে দিতে পারি, ফলাফলগুলি নোডলেস এক্সএমএল হিসাবে আবার সংগ্রহ করতে পারি, এবং ফলাফলটিতে প্রয়োগ .values('text()[1]', ...)করতে পারি:
SELECT
(
SELECT
n.n.value('text()[1]', 'varchar(50)') AS [text()]
FROM
@MyXml.nodes('/R/I') AS n (n)
FOR XML
PATH (''),
TYPE
).value('text()[1]', 'varchar(50)')
;
তবে, আমি কেবলমাত্র এক্সপথ / এক্সকিউয়ের পদ্ধতিগুলি ব্যবহার করে যা করতে চাই তা এই জাতীয় কিছু:
SELECT @MyXml. ? ( ? );
এরকম উপায় আছে কি?
আমি এই দিকটিতে সমাধানের সন্ধান করার কারণটি হ'ল আমার আসল এক্সএমএলে অন্যান্য উপাদানগুলিও রয়েছে, উদাহরণস্বরূপ:
<R>
<I>A</I>
<I>B</I>
<I>C</I>
...
<J>X</J>
<J>Y</J>
<J>Z</J>
...
</R>
এবং আমি প্রতিটি একের জন্য অযৌক্তিক স্ক্রিপ্ট ব্যবহার না করেই একটি একক স্ট্রিং হিসাবে মান Iএবং একক স্ট্রিং হিসাবে মান উভয়ই বের করতে সক্ষম হতে চাই J।