Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-03-2021
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
Resultados diferentes en un query

Buenas. A ver si me orientáis un poco. Tengo este query contra dos tablas en FB 2.5:
Código SQL [-]
SELECT B.Familia, SUM(B.Bruto) Bruto, SUM(B.Bruto * B.Tipo_iva / 100) Iva, SUM(A.Importe) Caja
  FROM Cajas A
  LEFT JOIN Diario B ON A.Fecha = B.Fecha
 WHERE EXTRACT(YEAR FROM A.Fecha) = 2021 AND A.Tipo IN ('EFECTIVO', 'OTROS')
 GROUP BY Familia
 ORDER BY Familia
y al ejecutarlo me da este resultado:


Si en es query elimino la tabla CAJAS y lo dejo así:
Código SQL [-]
SELECT Familia, SUM(Bruto) Bruto, SUM(Bruto * Tipo_iva / 100) Iva
  FROM Diario
 WHERE EXTRACT(YEAR FROM Fecha) = 2021
 GROUP BY Familia
 ORDER BY Familia
entonces me da este otro resultado:

que, por otra parte, es el resultado correcto.

Las tablas tienen esta estructura:
Tabla CAJAS
FECHA DATE NOT NULL
TIPO VARCHAR(15) NOT NULL
IMPORTE NUMERIC(12, 4)
Tabla DIARIO
FECHA DATE NOT NULL
FAMILIA VARCHAR(10) NOT NULL
BRUTO NUMERIC(12, 4)
TIPO_IVA SMALLINT
El archivo adjunto es un script con la definción de ambas tablas y los datos que actualmente hay en las mismas.
Archivos Adjuntos
Tipo de Archivo: rar Caja.rar (1,9 KB, 4 visitas)
Responder Con Cita
  #2  
Antiguo 20-03-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.067
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y cuál es la relación entre caja y diario?
Es que son tablas diferentes, es normal que salgan resultados diferentes.

Última edición por Casimiro Notevi fecha: 20-03-2021 a las 13:12:45.
Responder Con Cita
  #3  
Antiguo 22-03-2021
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿Y cuál es la relación entre caja y diario?
La única relación entre ambas tablas es la fecha: Todos los movimientos que haya están en la tabla CAJA, pero no todas las entradas que haya en CAJA implican una entrada en DIARIO. Estaba intentando no tener que ejecutar dos querys distintos para rellenar un TVirtualStringTree.
Responder Con Cita
  #4  
Antiguo 22-03-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.067
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Pero en una misma fecha puede existir movientos en caja y diario respectivamente, que no tengan nada que ver unos con otros.
Esas tablas deberían tener una relación, pues tal y como está ahora mismo son dos tablas totalmente independientes y "descontroladas".
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Agrupar resultados de un query Angel.Matilla Tablas planas 1 05-02-2014 19:46:11
Funciones que me den 2 resultados diferentes mrnovice OOP 5 21-08-2008 15:32:04
Mostrar resultados query SQL aikai SQL 6 15-11-2007 15:16:51
modificar resultados de un query en la BD Choclito Conexión con bases de datos 2 15-11-2006 00:12:50
Validar resultados de Query Supermagayin SQL 4 20-07-2006 23:36:21


La franja horaria es GMT +2. Ahora son las 15:56:23.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi