<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to Concatenate String over Multiple Rows by Group? in Discussions</title>
    <link>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/513162#M74058</link>
    <description>&lt;P&gt;One more option came to my mind which won't require any scripting (but can be easily scripted/JMP can mostly script it) (note that order will most likely change with this method).&lt;/P&gt;
&lt;P&gt;1. Split the original data&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_0-1656003074563.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43527iC463E44AD69ECD7C/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_0-1656003074563.png" alt="jthi_0-1656003074563.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;2. Select all the columns which start by P and use Cols/Combine Columns to create new column&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_1-1656003129096.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43528i608C7C4895022D2D/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_1-1656003129096.png" alt="jthi_1-1656003129096.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;3. Join new table with the new combined column to the original data&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_2-1656003197830.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43529iF0F598B4BC4C0CFF/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_2-1656003197830.png" alt="jthi_2-1656003197830.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;4. Result:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_3-1656003207349.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43530i2B37ACF852B0097B/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_3-1656003207349.png" alt="jthi_3-1656003207349.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 23 Jun 2022 16:56:10 GMT</pubDate>
    <dc:creator>jthi</dc:creator>
    <dc:date>2022-06-23T16:56:10Z</dc:date>
    <item>
      <title>How to Concatenate String over Multiple Rows by Group?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/512920#M74034</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a list of product (&amp;gt; 100) with different product codes of each product. I would like to create new column "Product Code Range" that it concatenates the product code for each product as shown below example. How to write JSL code that can do this task?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Product.PNG" style="width: 448px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43502i741C35FE400C3B7F/image-size/large?v=v2&amp;amp;px=999" role="button" title="Product.PNG" alt="Product.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 09 Jun 2023 17:02:14 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/512920#M74034</guid>
      <dc:creator>Lino</dc:creator>
      <dc:date>2023-06-09T17:02:14Z</dc:date>
    </item>
    <item>
      <title>Re: How to Concatenate String over Multiple Rows by Group?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/512950#M74036</link>
      <description>&lt;P&gt;I have written addin which can help with this&lt;LI-MESSAGE title="Group Listagg Columns" uid="460335" url="https://community.jmp.com/t5/JMP-Add-Ins/Group-Listagg-Columns/m-p/460335#U460335" discussion_style_icon_css="lia-mention-container-editor-message lia-img-icon-tkb-thread lia-fa-icon lia-fa-tkb lia-fa-thread lia-fa"&gt;&lt;/LI-MESSAGE&gt; . It is using sql-query to perform LISTAGG operation. You could install the addin and take code from there. Basic idea is something like this:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Names Default To Here(1);

dt = Current Data Table();	

custom_sql = Eval Insert(
"\[SELECT Product, GROUP_CONCAT(DISTINCT CAST("Product Code" as TEXT)) as "Product Code Range"
FROM t1
GROUP BY Product
]\");

dt_concat = Query(
	Table(dt, "t1"),
	custom_sql
);&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_0-1655989397688.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43503i87C0E37AB86F26E1/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_0-1655989397688.png" alt="jthi_0-1655989397688.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;and then join dt_concat back to the original table&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://www.jmp.com/support/help/zh/15.2/index.shtml#page/jmp/aggregate-sql-functions.shtml" target="_blank" rel="noopener"&gt; JSL Syntax Reference &amp;gt; SQL Functions Available for JMP Queries &amp;gt; Aggregate SQL Functions&lt;/A&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2022 13:03:26 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/512950#M74036</guid>
      <dc:creator>jthi</dc:creator>
      <dc:date>2022-06-23T13:03:26Z</dc:date>
    </item>
    <item>
      <title>Re: How to Concatenate String over Multiple Rows by Group?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/512966#M74040</link>
      <description>&lt;P&gt;Other option could be to create Associative Array with Products as keys and Product Codes in a list as values and then fill new column with that. This requires JMP16 due to For Each, but it can be replaced with For-loop if necessary&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Names Default To Here(1);

dt = Current Data Table();
aa = Associative Array(:Product &amp;lt;&amp;lt; get values);

For Each({{key, value}}, aa,
	aa[key] = dt[Loc(dt[0, "Product"], key), "Product Code"];
);

dt &amp;lt;&amp;lt; New Column("Product Code Range", Character, Nominal, &amp;lt;&amp;lt; Set Each Value(
	Concat Items(aa[:Product], "/");
));&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 23 Jun 2022 13:31:02 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/512966#M74040</guid>
      <dc:creator>jthi</dc:creator>
      <dc:date>2022-06-23T13:31:02Z</dc:date>
    </item>
    <item>
      <title>Re: How to Concatenate String over Multiple Rows by Group?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/513162#M74058</link>
      <description>&lt;P&gt;One more option came to my mind which won't require any scripting (but can be easily scripted/JMP can mostly script it) (note that order will most likely change with this method).&lt;/P&gt;
&lt;P&gt;1. Split the original data&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_0-1656003074563.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43527iC463E44AD69ECD7C/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_0-1656003074563.png" alt="jthi_0-1656003074563.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;2. Select all the columns which start by P and use Cols/Combine Columns to create new column&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_1-1656003129096.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43528i608C7C4895022D2D/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_1-1656003129096.png" alt="jthi_1-1656003129096.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;3. Join new table with the new combined column to the original data&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_2-1656003197830.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43529iF0F598B4BC4C0CFF/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_2-1656003197830.png" alt="jthi_2-1656003197830.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;4. Result:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_3-1656003207349.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43530i2B37ACF852B0097B/image-size/medium?v=v2&amp;amp;px=400" role="button" title="jthi_3-1656003207349.png" alt="jthi_3-1656003207349.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2022 16:56:10 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/513162#M74058</guid>
      <dc:creator>jthi</dc:creator>
      <dc:date>2022-06-23T16:56:10Z</dc:date>
    </item>
    <item>
      <title>Re: How to Concatenate String over Multiple Rows by Group?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/513195#M74063</link>
      <description>&lt;P&gt;And here is yet another way to do this, using Get Rows Where()&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;New Column( "PRC",
	character,
	set each value(
		theProduct = :Product[Row()];
		Concat Items(
			:Product Code[Current Data Table() &amp;lt;&amp;lt; get rows where( :Product == theProduct )],
			"/"
		);
	)
);&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="txnelson_0-1656006536451.png" style="width: 669px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/43534i7BB13CCA54C429DE/image-dimensions/669x428?v=v2" width="669" height="428" role="button" title="txnelson_0-1656006536451.png" alt="txnelson_0-1656006536451.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2022 17:49:11 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/513195#M74063</guid>
      <dc:creator>txnelson</dc:creator>
      <dc:date>2022-06-23T17:49:11Z</dc:date>
    </item>
    <item>
      <title>Re: How to Concatenate String over Multiple Rows by Group?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/513373#M74085</link>
      <description>&lt;P&gt;Jarmo,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you. All solutions provided is great.&lt;/P&gt;&lt;P&gt;It will help me in my learning.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2022 23:22:43 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/513373#M74085</guid>
      <dc:creator>Lino</dc:creator>
      <dc:date>2022-06-23T23:22:43Z</dc:date>
    </item>
    <item>
      <title>Re: How to Concatenate String over Multiple Rows by Group?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/513375#M74086</link>
      <description>&lt;P&gt;Jim.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It is great.&amp;nbsp;Thank you.&lt;/P&gt;&lt;P&gt;I learn new thing today&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2022 23:24:39 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-Concatenate-String-over-Multiple-Rows-by-Group/m-p/513375#M74086</guid>
      <dc:creator>Lino</dc:creator>
      <dc:date>2022-06-23T23:24:39Z</dc:date>
    </item>
  </channel>
</rss>

