Ver Mensaje Individual
  #2  
Antiguo 24-08-2022
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.738
Reputación: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
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 /*,refint*/

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 /*,refint*/

Última edición por duilioisola fecha: 24-08-2022 a las 11:18:41.
Responder Con Cita