Combine vários resultados em uma subconsulta em um único valor separado por vírgulas
Eu tenho duas tabelas:
TableA
------
ID,
Name
TableB
------
ID,
SomeColumn,
TableA_ID (FK for TableA)
O relacionamento é uma linha deTableA
- MuitosTableB
.
Agora quero ver um resultado assim:
ID Name SomeColumn
1. ABC X, Y, Z (these are three different rows)
2. MNO R, S
Isso não funcionará (vários resultados em uma subconsulta):
SELECT ID,
Name,
(SELECT SomeColumn FROM TableB WHERE F_ID=TableA.ID)
FROM TableA
Este é um problema trivial se eu fizer o processamento no lado do cliente. Mas isso significará que terei que executar consultas X em todas as páginas, onde X é o número de resultados deTableA
.
Note que não posso simplesmente fazer um GROUP BY ou algo semelhante, pois ele retornará vários resultados para linhas deTableA
.
Não tenho certeza se um UDF, utilizando COALESCE ou algo semelhante pode funcionar?