Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

sql server 2008 consulta union?

Estas en el tema de sql server 2008 consulta union? en el foro de SQL Server en Foros del Web. hola estoy intentando generar esta consulta para despues insertarla pero me sale el siguiente error : Mens. 8120, Nivel 16, Estado 1, Línea 1 La ...
  #1 (permalink)  
Antiguo 20/11/2009, 17:33
 
Fecha de Ingreso: noviembre-2009
Mensajes: 6
Antigüedad: 14 años, 5 meses
Puntos: 0
sql server 2008 consulta union?

hola estoy intentando generar esta consulta para despues insertarla pero me sale el siguiente error :

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;










************************************************** ***********
  #2 (permalink)  
Antiguo 23/11/2009, 13:49
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: sql server 2008 consulta union?

Te falta agrupar el primer select.
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:57.