Página 1 de 1

[RESUELTO]Instrucción SQL

Publicado: Vie Nov 13, 2015 12:49 pm
por Joan Terrassa
Hola, en la siguiente instrucción SQL, SELECT * FROM "visVentes2_1" UNION SELECT * FROM "visCompres2_1" UNION SELECT * FROM "visDespeses2_1", como puedo incluirle otro campo que de el resultado de restarle al campo "visVentes2_1" los campos "visCompres2_1" y "visDespeses2_1".
Muchas gracias por vuestra ayuda.

Re: Instrucción SQL

Publicado: Vie Nov 13, 2015 5:15 pm
por RMG
Hola,

Tu mismo puedes hacer la prueba creando la consulta con el generador en diseño y después viendola en vista SQL.

Saludos

Re: Instrucción SQL

Publicado: Vie Nov 13, 2015 7:16 pm
por Joan Terrassa
Esta consulta no me permite hacerla con el diseñador, al ser la union de tres vistas me obliga a hacerla directamente en SQL. Gracias

Re: Instrucción SQL

Publicado: Sab Nov 14, 2015 1:37 am
por mriosv
Tal vez me equivoque, pero simplemente no puedes.

Con cada UNION estás añadiendo nuevas filas al resultado de la consulta, no nuevos campos a cada fila.

Si las tablas tienen un campo común entonces puedes hacerlo con JOIN a través del campo común, y entonces si haciendo la operación directamente en el SELECT.

Re: Instrucción SQL

Publicado: Sab Nov 14, 2015 4:04 pm
por SLV-es
Si son tres tablas distintas, algo como esto debiera funcionar:

Código: Seleccionar todo

SELECT "visVentes",0 AS "viscompres",0 AS "visdespeses" FROM "visVentes2_1" UNION ALL
SELECT 0 AS "visVentes","viscompres",0 AS "visdespeses" FROM "visCompres2_1" UNION ALL
SELECT 0 AS "visVentes",0 AS "viscompres","visdespeses" FROM "visDespeses2_1"
donde visVentes,viscompres y visdespeses son los nombres de los campos que quieres sumar y restar

Para luego realizar otra consulta que realice la resta.