![]() |
consulta SQL
Hola.
No se si lo que intento se puede hacer (a mi no se me ocurre como), espero que a alguien se le ocurra algo. Tengo dos tablas de la siguiente forma (en interbase): Materiales ---------- Ndoc Integer Clave Integer Referencia Varchar Concepto Varchar Importe Numeric (9,2) ..... Salidas ------ Clave Integer ("enganchada" con materiales.clave) Cantidad Integer Factura Varchar .... lo que quiero hacer, es sacar los datos de una factura determinada. El problema es que en la tabla salidas pueden haber dos registros con la misma clave y la misma factura. Lo que quiero es que me salgan agrupados, y sume las cantidades. A lo máximo que he llegado es a: select s.clave, sum(s.cantidad) as cant, avg(m.ndoc) as ndoc, avg(m.importe) as importe, avg(m.importe)*sum(s.cantidad) as total from salidas s inner join materiales m on m.clave=s.clave group by s.clave having factura='numero_factura' El problema es que no puedo sacar la referencia y el concepto, ya que son varchar, y no puedo utlizar la función AVG. Bueno, espero haberme explicado bien. Gracias de antemano, y un saludo. |
Mira a ver con:
Código:
Select materiales.referencia, materiales.concepto, Saludos. |
Gracias por la respuesta.
Lo había solucionado de otra forma (ahora iba a poner como), pero tu solución, desde luego, es mucho más elegante y sencilla. Yo había creado una vista más o menos como esta: create view prueba (clave, factura, cantidad) as select clave, factura, sum(cantidad) as cant from salidas group by clave, factura después, simplemente ejecutando el siguiente sql, me daba la solución que quería (creo): select p.*, m.referencia, m.concepto, m.ndoc, m.importe, m.importe*p.cantidad as total from prueba p inner join materiales m on m.clave=p.clave where p.factura='numero_factura' De todas formas, creo que tu solución es mucho más sencilla que la mía. Gracias de nuevo, y un saludo. |
| La franja horaria es GMT +2. Ahora son las 07:06:17. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi