Visual Basic - Ayuda con select y group by

Life is soft - evento anual de software empresarial
 
Vista:

Ayuda con select y group by

Publicado por Miguel Arias (2 intervenciones) el 13/05/2004 15:46:39
Tengo este select:
insert into ind_aux SELECT financia.cedula AS cedula, financia.nombre AS nombre,financia.codigo AS codigo, financia.planilla as planilla,abonos.descrip AS descrip,abonos.nro_recibo AS nro_recibo,abonos.fec_rec AS fec_rec,abonos.fe_pago as fe_pago,abonos.nro_recibo as aux_rec,financia.gasadmin as gasadmin,financia.inicial as inicial,financia.banap as banap,financia.fonres as fonres,financia.cod_bar as cod_bar,financia.fechareg,abonos.meses AS meses,abonos.nro_deposi AS nro_deposi,abonos.nro_doc as nro_doc,
abonos.marca as marca,sum(abonos.monto_paga) As monto_paga
FROM financia,abonos WHERE TRIM(financia.cedula)+trim(financia.planilla) = TRIM(abonos.cedula)+trim(abonos.planilla) AND abonos.fec_rec between #" & desde & "# AND #" & hasta & "#"
GROUP BY abonos.nro_recibo,financia.cedula,financia.codigo ORDER BY abonos.nro_recibo,financia.cedula,financia.codigo".

Con este select me sale el siguiente error: Ha intentado ejecutar una consulta que no incluye la expresion especificada 'nombre' como parte de una funcion de agregado. Cuando coloco el campo nombre en el group by me da el error con la siguiente variable, es decir con descrip y asi sucesivamente. al colocar todas las variables menos la que sumo, es decit sum(monto_paga), me funciona el select pero no me agrupa por nro_recibo que es lo que quiero, sino que muestra las dos tablas juntas con los nro_recibo repetidos.
Ayuda con este select por fa
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda con select y group by

Publicado por madridsoft (10 intervenciones) el 13/05/2004 18:11:17
Hola Miguel,
Cuando haces una consulta con alguna función de agrupamiento (en este caso SUM), siempre tienes que indicar en la clausula GROUP BY todos los campos que muestres en la SELECT y que no tengan una función de agrupación.
No se exactamente que datos esperas obtener pero quizás te sirva presentar la consulta de la siguiente manera:

continua....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con select y group by

Publicado por madridsoft (10 intervenciones) el 13/05/2004 18:12:05
SELECT
financia.cedula AS cedula,
max(financia.nombre) AS nombre,
financia.codigo AS codigo,
max(financia.planilla) as planilla,
max(abonos.descrip) AS descrip,
abonos.nro_recibo AS nro_recibo,
max(abonos.fec_rec) AS fec_rec,
max(abonos.fe_pago) as fe_pago,
max(abonos.nro_recibo) as aux_rec,
max(financia.gasadmin) as gasadmin,
max(financia.inicial) as inicial,
max(financia.banap) as banap,
max(financia.fonres) as fonres,
max(financia.cod_bar) as cod_bar,
max(financia.fechareg),
max(abonos.meses) AS meses,
max(abonos.nro_deposi) AS nro_deposi,
max(abonos.nro_doc as) nro_doc,
max(abonos.marca) as marca,
sum(abonos.monto_paga) As monto_paga
FROM
financia,abonos
WHERE
TRIM(financia.cedula)+trim(financia.planilla) =
TRIM(abonos.cedula)+trim(abonos.planilla) AND
abonos.fec_rec between #" & desde & "# AND #" & hasta & "#"
GROUP BY
abonos.nro_recibo,
financia.cedula,
financia.codigo
ORDER BY
abonos.nro_recibo,
financia.cedula,
financia.codigo.

es decir, hemos calculado el MAXIMO de los campos que no forman parte de la agrupación.
Espero haberte ayudado, un saludo,
Agui
[email protected]
http://www.madridsoft.com
Consultas gratuitas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar