PDA

Ver la Versión Completa : Incoveniente con consulta!!!


negrokau
26-08-2011, 14:20:37
Hola a todos, estoy queriendo hacer una consulta, tengo una tabla con 'x' campos, en donde me interesa el campo DIFERENCIA, alli se va cargando montos negativos (-5.000) como positivos (5.000), lo que quiero es como separar los negativos de los positivos, y que me muestren en una misma grilla a la vez los dos separados esta es mi consulta hecha en un query pero no me funciona

SELECT NOMBRE, CEDULA, DESCUENTOS, DIFERENCIA, ESTADO, MES, SUELDO FROM LIQUIDACIONES, SOCIOS WHERE LIQUIDACIONES.NRO_SOCIO=SOCIOS.NRO_SOCIO AND DIFERENCIA>0 and DIFERENCIA<0 AND MES=:CONSULTA



por favor diganme si no me explique bien, gracias por su tiempo

fjcg02
26-08-2011, 15:12:43
SELECT
CASE WHEN DIFERENCIA >=0 THEN DIFERENCIA ELSE 0 END AS DIFPOSITIVA,
CASE WHEN DIFERENCIA <0 THEN DIFERENCIA ELSE 0 END AS DIFNEGATIVA
FROM LIQUIDACIONES, SOCIOS WHERE LIQUIDACIONES.NRO_SOCIO=SOCIOS.NRO_SOCIO

a ver si te vale.

Saludos

negrokau
26-08-2011, 15:19:13
Esa consulta lo cargo en el sql del query?

oscarac
26-08-2011, 15:28:31
Select
Case When Diferencia >= 0 then Diferencia else 0 end as Difpos
Case When Diferencia < 0 then Diferencia else 0 end as DifNeg
From Liquidaciones
te pregunto para que tomas la tabla socios si no interviene en la consulta...o es que la diferencia esta en esa tabla

negrokau
26-08-2011, 15:33:14
de la tabla de socios arrastra el nro. de documento y sueldo, y de la tabla de liquidaciones la diferencia, mes, monto_descontado y fecha

oscarac
26-08-2011, 15:35:53
disculpa pero no te entendi...
podrias hacer algo como esto?
Tabla1
Campo1, campo2., campo3.. campo4...
xxxx...yyyy.zzzzzz...uuuuuu
xxxx...yyyy.zzzzzz...uuuuuu
xxxx...yyyy.zzzzzz...uuuuuu

Tabla2
Campo1, campo2
11111....222222
11111....222222
11111....222222

quiero un resultado como este
xxxx...11111....22222.... 222-1111
yyyy...11111....22222.... 222-1111
zzzz...11111....22222.... 222-1111


para poder tener nua mejor vision de lo que necesitas y darte una mejor respuesta

negrokau
26-08-2011, 15:50:57
Originalmente esta era mi consulta y funciona muy bien

SELECT NOMBRE, CEDULA, DESCUENTOS, DIFERENCIA, ESTADO, MES,
SUELDO FROM LIQUIDACIONES, SOCIOS
WHERE LIQUIDACIONES.NRO_SOCIO=SOCIOS.NRO_SOCIO AND MES=:CONSULTA
esto lo cargue en el sql del QUERY, este query esta vinculado con un datasource, y este data esta vinculado con una dbgrid, alli me muestra todos esos datos de la consulta, funciona perfecto, lo quiero es que me muestre los mismos datos solo que ya discriminando la DIFERENCIA negativa y positiva en la misma grilla siempre, no se si alli se entiende mejor....

oscarac
26-08-2011, 15:55:43
ya.. tu quieres identificar las diferencias negativas y positivas verdad?


y que tiene que ver la tabla socios? los campos que solicitas en el query estan en 1 sola tabla? o la tabla socios contiene alguno de ellos

otra cosa que te recomiendo es la utilizacion de Joins


Select Tabla1.Campos, Tabla2.Campos
From Tabla1
Left Join Tabla2 on Tabla1.CampoenComun = tabla2.CampoenComun
Where.... condiciones

negrokau
26-08-2011, 16:06:55
la tabla de socios contiene unos datos tambien, la verdad no se como usar el join

oscarac
26-08-2011, 16:10:52
la tabla de socios contiene unos datos tambien, la verdad no se como usar el join

estimado negrokau... lamentablemente la bola de cristal que tenia se me rompio y ya no puedo estar haciendo adivinaciones... te agradeceria que mencionaras que "DATOS" relevantes con la consulta tiene la tabla socios

y respecto a la utilizacion de los join te deje un ejemplo en mi anterior intervencion....

formula bien tu pregunta.... mientas mas informacion facilites... mejores respuesta tendras..... en menos tiempo

No te estoy llamando la atencion... solo te estoy recomendando que nos facilites la vida... a nosotros y a ti...

Casimiro Notevi
26-08-2011, 16:24:47
estimado negrokau... lamentablemente la bola de cristal que tenia se me rompio y ya no puedo estar haciendo adivinaciones...

Es que nuestro presupuesto ya no da para más bolas de cristal. La última que tuve estaba muy bien, se conectaba al puerto USB y apenas consumía recursos, pero se sobrecalentó y se averió :)

Chris
26-08-2011, 18:14:13
Hola a todos, estoy queriendo hacer una consulta, tengo una tabla con 'x' campos, en donde me interesa el campo DIFERENCIA, alli se va cargando montos negativos (-5.000) como positivos (5.000), lo que quiero es como separar los negativos de los positivos, y que me muestren en una misma grilla a la vez los dos separados esta es mi consulta hecha en un query pero no me funciona

Lo que quisiera saber es en qué forma los quieres separar. Juntos en la misma grilla? No era que los querías separados?. Creo que más bien, entre separar y juntar, lo que necesitas es agrupar u ordenar.

Utiliza la claúsula ORDER BY DIFERENCIA, para separar las diferencias de menor a mayor. Así las diferencias negativas aperecerán primero y luego aparecerán las positivas.

Saludos,
Chris

negrokau
26-08-2011, 18:35:33
las quiero agrupar y despues separar en columnas diferentes pero en la misma grilla... disculpen mis explicaciones, tratare de ser mas explicativo, muchas gracias igual por el aguante:D

Chris
26-08-2011, 18:39:14
las quiero agrupar y despues separar en columnas diferentes pero en la misma grilla... disculpen mis explicaciones, tratare de ser mas explicativo, muchas gracias igual por el aguante:D

Espare que seas un poco más explicativo antes de contestar. Si te cuesta decirlo en palabras, puedes dibujarlo. No es broma! Muchos acá hemos recurrido a esa técnica cuando sentimos que no podemos explicar lo que deseamos. O creemos que sería más fácil decirlo con un dibujo que utilizando palabras. Una imagen vale más que mil palabras, ya lo sabes!

Saludos,
Chris

negrokau
27-08-2011, 18:11:27
2088
Asi sale mi consulta, lo que quiero es que la diferencia negativa salga en una columna al lado de la columna diferencia, alli van a estar separados y agrupados los montos negavitos y positivos en una misma grilla,ojala se entienda.. gracias

oscarac
27-08-2011, 18:26:08
parece que no estas leyendo lo que te estamos diciendo

la consulta quer te dejo fjcg02 hace exactamente lo que tu necesitas y tampoco respondiste a mi pregunta..

la bendita tabla socios que datos tiene?.. son relevantes? involucra la informacion que deseas obtener?

negrokau
27-08-2011, 18:29:54
las tabla de socios si es relevante, involucra las campos de sueldo, cedula
y la consulta que me dio fjc02 no me funciona, lo cargo en el "SQL DEL QUERY" y me salta un error con "when" que es desconocido

oscarac
27-08-2011, 18:36:18
que base de datos estas usando?
no me digas que access

negrokau
30-08-2011, 13:10:34
Interbase estoy usando, gracias por las molestias