Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-07-2007
Vichomo Vichomo is offline
Miembro
 
Registrado: jul 2007
Posts: 21
Poder: 0
Vichomo Va por buen camino
Talking Query con 3 tablas

Buenas Noches Amigos del Club...

Tengo un serio problema, estoy haciendo un sistemita que es para llevar remisiones (facturas), productos, clientes, etc, el problema esta en que estoy haciendo una pantalla donde tengo un dbgrid, ese dbgrid tiene que mostrarme ciertos campos.
les explicare brevemente el proceso, cuando remisiono un producto o mas
guardo la clave de cliente q remisiona, guardo la clave de producto, y la cantidad de producto, esto se guarda en detalle remision, ahora lo que quiero hacer es jalar en la pantalla, el nombre de cliente, su saldo, y la cantidad acumulada que ha sumado el cliente de todas sus remisiones, solo me tiene que mostrar la cantidad de ciertos productos (especificamente del 1 y 2)
Les dire que tablas son con las que interactuo en esa pantalla. solo pondre los campos que necesitamos.

Son 3
1. tabla --> Clientes (cvecli, razso(es el nombre), saldo)
2. tabla ---> Remisiones (cverem, cvecli)
3. tabla ---> Detalle_remision(cverem, cvepro(clave del producto), cantidad)

Eh tratado de hacer querys pero no me sale, no eh podido, ya llevo un par de dias trabado en esto. lo estoy haciendo el delphi 6, ocupo un dbgrid que se conecta con su datasource y este a su dataset.

Este query eh hecho, bueno de mucho y no me corre, me dice invalid column reference, solo si le quito los campos de de c.cvecli, c.razso, c.saldo, me corre pero solo me da la suma de la cantidad por cada remision.

select cverem, sum(canti), c.cvecli, c.razso, c.saldo from remisiones r, detalle_remision d, clientes c where r.cverem = d.cverem and r.cvecli= c.cvecli group by cverem

De antemano les agradezco su tiempo y sus comentarios.
Responder Con Cita
  #2  
Antiguo 29-07-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Bienvenido al club.
Tal vez asi:
Código SQL [-]
SELECT Clientes.cvecli, Clientes.razso, Clientes.saldo, Remisiones.cverem, 
Remisiones.cvecli, Detalle_remision.cverem, Detalle_remision.cvepro, 
SUM(Detalle_remision.cantidad) as (Cantidad) FROM Clientes, Remisiones,
Detalle_remision, WHERE Remisiones.cverem = Detalle_remision.cverem and 
Clientes.cvecli = Remisiones.cvecli GROUP BY cvecli
Saludos
Responder Con Cita
  #3  
Antiguo 29-07-2007
Vichomo Vichomo is offline
Miembro
 
Registrado: jul 2007
Posts: 21
Poder: 0
Vichomo Va por buen camino
No funciono..

Hola Caral, gracias por tu tiempo y tu respuesta pero tenemos malas noticias, no funciona, me sigue saliendo el mismo error cuando ejecuto el query en Ibexpert Invalid Column reference.

Pero de todas maneras te agradezco..

Buen Dia...
Responder Con Cita
  #4  
Antiguo 29-07-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Hola,

Bien a bien no sé en qué radica el problema, pero en tu consulta original

Código SQL [-]
select cverem, sum(canti), c.cvecli, c.razso, c.saldo
from remisiones r, detalle_remision d, clientes c
where r.cverem = d.cverem and r.cvecli= c.cvecli
group by cverem

la referencia al campo cvrem en group by es ambigua; puede ser la llave de la tabla remisiones o la llave foranea en la tabla detalle_remision.

Quizá por ahí vaya el problema.

// Saludos
Responder Con Cita
  #5  
Antiguo 29-07-2007
Vichomo Vichomo is offline
Miembro
 
Registrado: jul 2007
Posts: 21
Poder: 0
Vichomo Va por buen camino
Query

Si es ambigua por lo que vi, pero entonces como podria agruparlos, para que mi resultado fuera el requerido, porque si es por cvecli, tambien es ambigua.

Gracias
Responder Con Cita
  #6  
Antiguo 29-07-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Has probado con d.cvrem? Y, por cierto, en el select pasa lo mismo.

// Saludos
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
Imprimir resultado de 2 tablas con un Query maravert Impresión 2 06-12-2006 17:57:59
Query entre dos tablas de distintas databases tefots Firebird e Interbase 2 06-11-2006 15:28:29
nombre de las tablas en un query ercrizeporta Conexión con bases de datos 2 28-09-2006 17:30:46
Query a Tablas Paradox pelaorb68 Conexión con bases de datos 0 13-01-2006 23:25:25
Query con tablas temporales cartmanrules Firebird e Interbase 4 27-05-2004 10:23:47


La franja horaria es GMT +2. Ahora son las 05:56:19.


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