Quita la agrupación por RefInt.
SUM, AVG, MIN, MAX, COUNT, LIST y algún otro que me debo dejar son campos que agrupan el resultado de varios registros.
Si agrupas por CODIGO y REFINT, la lista será de cada REFINT por separado y obviamente contendrá solo un registro.
Si agrupas solo por CODIGO, la lista contedrá todos los REFINT que tengan el mismo código.
Código SQL
[-]
select codigo, sum(importe) cuota, list(refint, ',')
from recibos
where
cast(codigo as blob) || '$' || refint in ('167$120180702', '983$120191001', '1475$120201001', '1475$120191226', '2660$120201001', '2660$120191226', '2660$120181226')
group by codigo
Nota al margen:
A mi me gusta hacer las listas con el separador ', ' (coma + espacio).
Por ejemplo LIST(refint, ', ')
- La lectura es más facil.
- Si está dentro de un memo, si está configurado para separar por palabras (WordWrap) corta la línea correctamente y queda más fluido.
Otra opción es que el separador sea un salto de línea (#13#10)
Código SQL
[-]
select codigo, sum(importe) cuota, list(refint, ascii_char(13) || ascii_char(10))
from recibos
where
cast(codigo as blob) || '$' || refint in ('167$120180702', '983$120191001', '1475$120201001', '1475$120191226', '2660$120201001', '2660$120191226', '2660$120181226')
group by codigo