| |||
Consulta sql Hola saludos a todos..tengo una duda....tengo una consulta en sql server 2008, la cual, me arroja 3 campos...nombre, ventas y edad...entonces como le puedo hacer si, quiero que a la hora de hacer la consulta si la venta esta en 0 no me aparezca el nombre pero si la edad....si me explico..?..ojala y me puedan ayudar.saludos.. |
| |||
Respuesta: Consulta sql me marca un error , puedes checar este query..? necesito que no me muestre el nombre si la meta=0, q muestre el campo meta en blanco....y los demas con sus datos correspondientes.. select susuarios.logname as Nombre_Vendedor,sales2.id, metasxvendedor.meta / 31 *(Day( getdate() )-1) as meta, sum (venta) as Venta, (metasxvendedor.meta / 31 * (Day( getdate() )-1)) - sum (venta) as Diferencia, (Metasxvendedor.meta / 31 * (Day( getdate() )-1) -Sum (Venta)) / (metasxvendedor.meta / 31 * (Day( getdate() )-1)) * 100 as Porcentaje, case meta when 120000 then '' else '1' end Nombre_Vendedor from sales2 |
| ||||
Respuesta: Consulta sql Prueba con :
Código SQL:
Ver original Solo que no estoy seguro de lo que es : "susuarios", "Metasxvendedor" son tablas? si son tablas, no las veo en tu consulta y por lo tanto hay que agregarlas. Última edición por Joch_pa; 13/07/2011 a las 20:12 |
| |||
Respuesta: Consulta sql si, son tablas....este es el query completo q estoy usando...lo q hace es q me compara y me suma informacion de 3 tablas, entonces si un usuario tiene el campo meta vacio o en nulo me tiene q dar la id, y la venta pero sin el nombre del usuario, el problema q me esta dando es q el tipo de dato de meta es money y el resultado de meta viene d una consulta por lotanto al hacer una consulta me esta dando valor null no un 0, el codigo q me pusiste lee igual para valor NULL...si me explico..?..gracias por tu ayuda select susuarios.logname as Nombre_Vendedor,sales2.id, metasxvendedor.meta / 31 *(Day( getdate() )-1) as meta, sum (venta) as Venta, (metasxvendedor.meta / 31 * (Day( getdate() )-1)) - sum (venta) as Diferencia, (Metasxvendedor.meta / 31 * (Day( getdate() )-1) -Sum (Venta)) / (metasxvendedor.meta / 31 * (Day( getdate() )-1)) * 100 as Porcentaje, case metasxvendedor.meta / 31 *(Day( getdate() )-1) when metasxvendedor.meta / 31 *(Day( getdate() )-1) = convert (money ,'0') THEN '' else susuarios.logname end as Nombre from sales2 left join susuarios on sales2.id=susuarios.id and susuarios.sid=sales2.sid left join metasxvendedor on sales2.sid=metasxvendedor.sid and sales2.id=metasxvendedor.id and metasxvendedor.idate >='7/01/2011' and metasxvendedor.idate <='7/12/2011' where sales2.venta <>0 and sales2.sid='6' and sales2.idate>='7/1/2011' and sales2.idate<='7/12/2011' group by susuarios.logname,susuarios.id,sales2.id, metasxvendedor.meta ORDER BY PORCENTAJE DESC |
| |||
Respuesta: Consulta sql actualmente si yo ejecuto el query me da como resultado esto: Nombre_Vendedor id Meta Venta Diferencia Porcentaje MGarcia 159 41935.4832 -13642.09 55577.5732 132.53 y esto es lo q necesito si meta es igual a 0, no me va calcular los campos por q necesito ese dato,pero si me debe de arrojar el id y el nombre de vendedor debe de aparecer vacio Nombre_Vendedor id Meta Venta Diferencia Porcentaje Null 159 0 -13642.09 0 0 ahorita checo el codigo q enviaste...muchas gracias por la ayuda |
| |||
Respuesta: Consulta sql Hola , saludos a todos..acabo de checar el query q enviaste josh, nada mas tengo una duda..me marca un error al correrlo, yo miro todo bien pero no se q esta pasando me marca el sig error: Sintaxis incorrecta cerca de ')'. y este es el codigo. SELECT case when venta = 0 then '' else Nombre_Vendedor END AS [Nombre_Vendedor], id, meta, venta, Diferencia, Porcentaje FROM ( SELECT susuarios.nombre AS Nombre_Vendedor, usuarios.id, metas.meta / 31 *(Day( getdate() )-1) AS meta, sum (venta) AS Venta, (metas.meta / 31 * (Day( getdate() )-1)) - sum (venta) AS Diferencia, (Metas.meta / 31 * (Day( getdate() )-1) -Sum (Venta)) / (metas.meta / 31 * (Day( getdate() )-1)) * 100 AS Porcentaje FROM sales2 ) me falta algo o hice algo mal.?..saludos y gracias por sus respuestas |
| |||
Respuesta: Consulta sql Estoy haciendo una pruebas con el case..y me esta marcando un error q no entiendo.creo q q tiene q ver con la logica...alguien sabe q significa este es el error--Msg 170, Level 15, State 1, Line 3 Line 3: Incorrect syntax near '>'. y este es el query SELECT permiso,id, logname = CASE id WHEN id > 50 THEN 'A' WHEN id 45 THEN 'B' ELSE 'unknow' END, FROM susuarios |
| ||||
Respuesta: Consulta sql Si esta mal seria asi: SELECT permiso,id, CASE id WHEN id > 50 THEN 'A' WHEN id 45 THEN 'B' ELSE 'unknow' END as logname FROM susuarios Saludos!
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| |||
Respuesta: Consulta sql Saludos a todos...he estado haciendo pruebas con este query y no me funciona...he estado deslosando en otros subquerys y si funciona pero a la hora de juntarlo truena..ok....vi un mensaje pusiste Josh Solo que no estoy seguro de lo que es : "susuarios", "Metasxvendedor" son tablas? si son tablas, no las veo en tu consulta y por lo tanto hay que agregarlas. SELECT case when venta = 0 then '' else Nombre_Vendedor END AS [Nombre_Vendedor], id, meta, venta, Diferencia, Porcentaje, FROM ( SELECT susuarios.logname AS Nombre_Vendedor, sales2.id, metasxvendedor.meta / 31 *(Day( getdate() )-1) AS meta, sum (venta) AS Venta, (metasxvendedor.meta / 31 * (Day( getdate() )-1)) - sum (venta) AS Diferencia, (Metasxvendedor.meta / 31 * (Day( getdate() )-1) -Sum (Venta)) / (metasxvendedor.meta / 31 * (Day( getdate() )-1)) * 100 AS Porcentaje FROM sales2 )A agregarlas en donde en la primera consulta del select..?.por q en la segunda ya arroja el resultado..saludos y gracias por tu respuesta |
| |||
Respuesta: Consulta sql al final quedo asi............gracias por sus respuestas.. SELECT SALES2.ID, MetasxVendedor.Meta / 31 * (Day( getdate() )-1) AS Meta, SUM(SALES2.VENTA) AS Venta, MetasxVendedor.Meta / 31 * 13 - SUM(SALES2.VENTA) AS Diferencia, (MetasxVendedor.Meta / 31 * (Day( getdate() )-1) - SUM(SALES2.VENTA)) / (MetasxVendedor.Meta / 31 * (Day( getdate() )-1)) * 100 AS Porcentaje, case when metasxvendedor.meta is null THEN '' else susuarios.logname end as Nombre FROM SALES2 LEFT OUTER JOIN SUsuarios ON SALES2.ID = SUsuarios.id AND SUsuarios.sid = SALES2.SID LEFT OUTER JOIN MetasxVendedor ON SALES2.SID = MetasxVendedor.SID AND SALES2.ID = MetasxVendedor.ID AND (MetasxVendedor.IDATE >= @IDATE) AND (MetasxVendedor.IDATE <= @IDATE2) WHERE (SALES2.VENTA <> 0) AND (SALES2.SID = @SID) AND (SALES2.IDATE >= @IDATE) AND (SALES2.IDATE <=@IDATE2) GROUP BY SUsuarios.logname, SUsuarios.id, SALES2.ID, MetasxVendedor.Meta ORDER BY (MetasxVendedor.Meta / 31 * (Day( getdate() )-1) - SUM(SALES2.VENTA)) / (MetasxVendedor.Meta / 31 * (Day( getdate() )-1)) * 100 DESC |
Etiquetas: |