Using Postgres, I want to convert the following records:
ID serviceaccess
11 Value1
11 Value2
11 Value3
22 Value2
22 Value1
22 Value1
Into this result:
ID
11 value1, value2, value3
22 value2, value1, value1
I can't use functions, because the system I am using doesn't support those. I could do case statements though.
I also checked the following:
SQL Server : GROUP BY clause to get comma-separated values
I tried this, but it doesn't work:
WITH RecurRanked ( dbid, rnk, serviceaccess)
AS (
SELECT t.t1.dbid, t.t1.rnk, t.t2.serviceaccess || ', ' || t.t1.serviceaccess
FROM t.t1
INNER JOIN t.t2 ON t.t1.dbid = RecurRanked.dbid AND t.t1.rnk = RecurRanked.rnk + 1)
SELECT dbid, MAX(serviceaccess)
FROM RecurRanked
GROUP BY dbid;
SELECT t.t1.dbid, t.t1.rnk, t.t2.serviceaccess || ', ' || t.t1.serviceaccess
FROM t.t1
INNER JOIN t.t2 ON t.t1.dbid = t.t2.dbid AND t.t1.rnk = t.t2.rnk + 1