Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/11/2009, 17:39
wesut
 
Fecha de Ingreso: noviembre-2009
Mensajes: 6
Antigüedad: 14 años, 6 meses
Puntos: 0
sql consulta union??

hola trato de generar esta consulta pero me arroja en el seguiente erro:
Mens. 8120, Nivel 16, Estado 1, Línea 1
La columna 'fmmc_marts.dbo.Dim_Producto.ProductoID' de la lista de selección no es válida, porque no está contenida en una función de agregado ni en la cláusula GROUP BY.
************************************************** ************
select dp.productoid,dc.clienteid,dpe.personalid,ddoc.Doc umentoID,dv.VentaID,dt.Tiempo_ID,
montototalvendido=sum(dd.subtotal)
from d_doc dd inner join documento_v d
on d.doc_num =dd.doc_num and d.doc_serie=dd.doc_serie
inner join fmmc_marts.dbo.Dim_Documento ddoc
on ddoc.num_doc = d.doc_num
inner join Tipo_venta tv on tv.Tventa_id= d.TVenta_id
inner join fmmc_marts.dbo.Dim_Venta dv
on dv.tventa_id = tv.Tventa_id
inner join fmmc.dbo.Produ pr
on pr. pro_id= dd.prod_id
inner join fmmc_marts.dbo.Dim_Producto dp
on dp.pro_id = dd.prod_id
inner join fmmc.dbo.Cliente cli
on cli.Cli_id = d.cli_id
inner join fmmc_marts.dbo.Dim_cliente dc
on dc.cli_id=d.cli_id
inner join fmmc.dbo.Personal per
on per.Per_id= d.Per_id
inner join fmmc_marts.dbo.Dim_personal dpe
on dpe.per_id = d.per_id
inner join fmmc_marts.dbo.Dim_tiempo dt on
dt.Fecha =convert(char(10),d.fecha,103)
union select dp.productoid,dc.clienteid,dpe.personalid,ddoc.Doc umentoID,dv.VentaID,dt.Tiempo_ID,
totalventasacredito= sum (d.total)
from d_doc dd inner join documento_v d
on d.doc_num =dd.doc_num and d.doc_serie=dd.doc_serie
inner join fmmc_marts.dbo.Dim_Documento ddoc
on ddoc.num_doc = d.doc_num
inner join Tipo_venta tv on tv.Tventa_id= d.TVenta_id
inner join fmmc_marts.dbo.Dim_Venta dv
on dv.tventa_id = tv.Tventa_id
inner join fmmc.dbo.Produ pr
on pr. pro_id= dd.prod_id
inner join fmmc_marts.dbo.Dim_Producto dp
on dp.pro_id = dd.prod_id
inner join fmmc.dbo.Cliente cli
on cli.Cli_id = d.cli_id
inner join fmmc_marts.dbo.Dim_cliente dc
on dc.cli_id=d.cli_id
inner join fmmc.dbo.Personal per
on per.Per_id= d.Per_id
inner join fmmc_marts.dbo.Dim_personal dpe
on dpe.per_id = d.per_id
inner join fmmc_marts.dbo.Dim_tiempo dt
on dt.Fecha=convert(char(10),d.fecha,103)
where d.TVenta_id='2'
group by dp.productoid,dc.clienteid,dpe.personalid,ddoc.Doc umentoID,dv.VentaID,dt.Tiempo_ID

************************************************** ************