<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	Comments on: SQL Puzzle: SQL Advance Query &#8211; Print comma separated Divisions	</title>
	<atom:link href="https://www.dbrnd.com/2017/10/sql-puzzle-sql-advance-query-print-comma-separated-divisions/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.dbrnd.com/2017/10/sql-puzzle-sql-advance-query-print-comma-separated-divisions/</link>
	<description>BIGData &#124; NoSQL &#124; MSSQL &#124; MySQL &#124; PostgreSQL</description>
	<lastBuildDate>Tue, 10 Oct 2017 12:52:04 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.4</generator>
	<item>
		<title>
		By: Dinesh I.S		</title>
		<link>https://www.dbrnd.com/2017/10/sql-puzzle-sql-advance-query-print-comma-separated-divisions/#comment-5898</link>

		<dc:creator><![CDATA[Dinesh I.S]]></dc:creator>
		<pubDate>Tue, 10 Oct 2017 12:52:04 +0000</pubDate>
		<guid isPermaLink="false">https://www.dbrnd.com/?p=6423#comment-5898</guid>

					<description><![CDATA[--Method-2
Declare @DivisionsDetails Table(EmpID Int,DividsID Int)
Declare @EmpID Int;
Select @EmpID=Min(EmpID) From TBL_Emp
Declare @Len As Int;
Declare @Divids VarChar(4000)
While @EmpID Is Not Null
Begin
			
			Select @Divids=Divids From TBL_Emp Where EmpID=@EmpID
			
			While Len(@Divids)&#062;0
			Begin
					Set @Len=(Case CharIndex(&#039;,&#039;,@Divids) When 0 Then Len(@Divids) Else CharIndex(&#039;,&#039;,@Divids)-1 End)
					Insert Into @DivisionsDetails
					Values(@EmpID,SubString(@Divids,1,@Len))
					
					Set @Divids=(Case Len(@Divids)-@Len When 0 Then Null Else Right(@Divids,Len(@Divids)-@Len-1) End)
			End
			
			Select @EmpID=Min(EmpID) From TBL_Emp Where EmpID&#062;@EmpID
End

Select EmpID,EmpName,(Select Convert(VarChar(500),DivisionName)+&#039;,&#039; From TBL_Divisions D Inner JOin @DivisionsDetails DL On DL.DividsID=D.Divids Where DL.EmpID=E.EmpID For XML PATH(&#039;&#039;)) As DivisionName
From TBL_EMP E]]></description>
			<content:encoded><![CDATA[<p>&#8211;Method-2<br />
Declare @DivisionsDetails Table(EmpID Int,DividsID Int)<br />
Declare @EmpID Int;<br />
Select @EmpID=Min(EmpID) From TBL_Emp<br />
Declare @Len As Int;<br />
Declare @Divids VarChar(4000)<br />
While @EmpID Is Not Null<br />
Begin</p>
<p>			Select @Divids=Divids From TBL_Emp Where EmpID=@EmpID</p>
<p>			While Len(@Divids)&gt;0<br />
			Begin<br />
					Set @Len=(Case CharIndex(&#8216;,&#8217;,@Divids) When 0 Then Len(@Divids) Else CharIndex(&#8216;,&#8217;,@Divids)-1 End)<br />
					Insert Into @DivisionsDetails<br />
					Values(@EmpID,SubString(@Divids,1,@Len))</p>
<p>					Set @Divids=(Case Len(@Divids)-@Len When 0 Then Null Else Right(@Divids,Len(@Divids)-@Len-1) End)<br />
			End</p>
<p>			Select @EmpID=Min(EmpID) From TBL_Emp Where EmpID&gt;@EmpID<br />
End</p>
<p>Select EmpID,EmpName,(Select Convert(VarChar(500),DivisionName)+&#8217;,&#8217; From TBL_Divisions D Inner JOin @DivisionsDetails DL On DL.DividsID=D.Divids Where DL.EmpID=E.EmpID For XML PATH(&#8221;)) As DivisionName<br />
From TBL_EMP E</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Dinesh I.S		</title>
		<link>https://www.dbrnd.com/2017/10/sql-puzzle-sql-advance-query-print-comma-separated-divisions/#comment-5897</link>

		<dc:creator><![CDATA[Dinesh I.S]]></dc:creator>
		<pubDate>Tue, 10 Oct 2017 12:51:43 +0000</pubDate>
		<guid isPermaLink="false">https://www.dbrnd.com/?p=6423#comment-5897</guid>

					<description><![CDATA[---Method-1
;
WITH CTE
As
(
	Select A.EmpID,empname,B.Divids From (
	Select EMpID,empName,Cast(&#039;&#039;+Replace(Divids,&#039;,&#039;,&#039;&#039;)+&#039;&#039; As XML) As XMLData
	From TBL_EMP) A 
	Outer Apply (Select r.value(&#039;.&#039;,&#039;NvarChar(max)&#039;) As Divids
	From XMLData.nodes(&#039;t&#039;) As Records(r)
	) B 
)
Select EmpID,EmpName,(Select Convert(VarChar(500),DivisionName)+&#039;,&#039; From CTE C Inner JOin TBL_Divisions D On D.Divids=C.Divids Where C.EmpID=A.EmpID For XML PATH(&#039;&#039;)) As Divisions
From TBL_Emp A]]></description>
			<content:encoded><![CDATA[<p>&#8212;Method-1<br />
;<br />
WITH CTE<br />
As<br />
(<br />
	Select A.EmpID,empname,B.Divids From (<br />
	Select EMpID,empName,Cast(&#8221;+Replace(Divids,&#8217;,&#8217;,&#8221;)+&#8221; As XML) As XMLData<br />
	From TBL_EMP) A<br />
	Outer Apply (Select r.value(&#8216;.&#8217;,&#8217;NvarChar(max)&#8217;) As Divids<br />
	From XMLData.nodes(&#8216;t&#8217;) As Records(r)<br />
	) B<br />
)<br />
Select EmpID,EmpName,(Select Convert(VarChar(500),DivisionName)+&#8217;,&#8217; From CTE C Inner JOin TBL_Divisions D On D.Divids=C.Divids Where C.EmpID=A.EmpID For XML PATH(&#8221;)) As Divisions<br />
From TBL_Emp A</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
