Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-08-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Que dificil sin ver, bueno para mi, aqui hay un ejemplo, no se si es lo que buscas, necesito la base de datos, soy novato, no lo se hacer al aire.
Ejemplo:
Código SQL [-]
SELECT Clientes.CodCliente, Clientes.NombreCliente, CxCobrar.CodTransac, CxCobrar.TipoTransac, CxCDetalle.Documento, CxCDetalle.Monto, CxCDetalle.TipoDocumento
FROM (Clientes INNER JOIN CxCobrar ON Clientes.CodCliente = CxCobrar.CodCliente) INNER JOIN CxCDetalle ON CxCobrar.CodTransac = CxCDetalle.Documento;
Esto es en base a otra tabla, pero te indica la secuencia.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #2  
Antiguo 12-08-2007
Deiv Deiv is offline
Miembro
 
Registrado: jul 2005
Ubicación: La Paz - Bolivia
Posts: 364
Poder: 22
Deiv Va por buen camino
Gracias Caral por responder nuevamente, pero te prometo que tal como escribí textualmente en mi primer post, así igualito lo tengo la BD en Access (sin mas ítemes). De todos modos mañana lo adjunto. Y relacionado a mi post:
Cita:
Empezado por Deiv
- ¿Cúal sería el código SQL para mostrar únicamente de D1 y la OF3 los valores de Muebles?
Cita:
Empezado por Deiv
- ¿Cúal sería el código SQL para mostrar TODOS los Muebles del D1 (OF2 + OF3)
Ahí es precisamente donde voy lidiando. Voy a revisar tu ejemplo (me es nuevo el Inner Join) pero además ¿cómo obtener dicho filtrado sobre mis preguntas???
Responder Con Cita
  #3  
Antiguo 12-08-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Truco:
Usas access, pues este tiene un generador de consultas, puedes hacer una consulta usando el asistente y ver el codigo sql que genera, lo puedes pulir lo que necesites, se aprende mucho.
Este codigo, lo copias y lo pegas en delphi, funciona.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #4  
Antiguo 13-08-2007
Deiv Deiv is offline
Miembro
 
Registrado: jul 2005
Ubicación: La Paz - Bolivia
Posts: 364
Poder: 22
Deiv Va por buen camino
Gracias por el Truco en esto había pensado aquella vez que empezaba con SQL (recientemente) me resultaba más cómodo copiarlo que pensar el código correspondiente, observé algo en ese "trajín" de muchas consultas que realicé trabajando en Access (quizá esté Yo mal) nunca vi la sentencia where, hablo inclusive de tablas relacionadas, ¿será aquí donde debo entender que existen muchas versiones de SQL?? ; pues si fuera así relacionado a mi post como aplicar esta sentencia where.?
Responder Con Cita
  #5  
Antiguo 13-08-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Cita:
Empezado por Deiv
(...)pues si fuera así relacionado a mi post como aplicar esta sentencia where.?
La clausura where va al final de una consulta (excepto cuando hay una clausura ORDER BY, O HAVING).

Recuerda que el orden es:
SELECT: Lo que se desea obtener
FROM: De donde hay que obtener
WHERE: Alguna condición que deban cumplir

Una instrucción WHERE está constituída por al menos una condición. Es decir:

WHERE condicion

Donde condición puede tiene esta forma:

(ElCampo OPERADOR parametro). Ejemplo de operadores: =, <=, >=, AND, OR, NOT.

Bueno... como ejemplo:

- ¿Cúal sería el código SQL para mostrar únicamente de D1 y la OF3 los valores de Muebles?

Código SQL [-]
SELECT Tabla3.Muebles
FROM (Tabla1 INNER JOIN Tabla2 ON Tabla1.idDepto = Tabla2.idDepto)
         INNER JOIN Tabla3 ON Tabla2.idOficina = Tabla3.idOficina
WHERE (Tabla1.idDepto = D1) AND (Tabla2.idOficina = OF3)

Y la expresión "equivalente":
Código SQL [-]
SELECT Tabla3.Muebles
FROM Tabla1, Tabla2, Tabla3
WHERE (Tabla1.idDepto = Tabla2.idDepto) AND (Tabla2.idOficina = Tabla3.idOficina) AND (Tabla1.idDepto = D1) AND (Tabla2.idOficina = OF3)

La instruccion INNER JOIN sirve para obtener un encuentro natural entre las tablas y se desea obtener en una consulta los campos que pertenecen a una o más tablas. Omite los nulos. En cambio emplear por condiciones del tipo AND es más liviana: no es restrictiva con respecto a los nulos.

Espero que te sea util mi breve y corto resumen introductorio al SQL.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]

Última edición por Delphius fecha: 13-08-2007 a las 04:08:25.
Responder Con Cita
  #6  
Antiguo 14-08-2007
Deiv Deiv is offline
Miembro
 
Registrado: jul 2005
Ubicación: La Paz - Bolivia
Posts: 364
Poder: 22
Deiv Va por buen camino
Thumbs up

Gracias por tan didáctica explicación. He probado vuestro código y, por alguna razón sale este error:
Código:
Raised exception class EOleException with message 'El parámetro D1 no tiene un valor predeterminado'
De tanto averiguar y hacer algunos "experimentos" con el código en Access, pude comprobar que sololamente le faltan comillas a "D1" y "OF3" y luego funciona a la perfección.
Agradecer a Delphius y Caral por la preocupación prestada. Gracias amigos es bueno saber que siempre vamos a disponer de vuestra ayuda en el Foro.
Saludos
Deiv
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Reporte tablas relacionadas silviodp Impresión 0 06-01-2005 15:25:36
Update en Tablas Relacionadas gluglu Conexión con bases de datos 0 01-10-2004 19:42:50
Tablas relacionadas + commit brandolin Firebird e Interbase 11 28-04-2004 11:12:04
Consultar 2 tablas relacionadas mlara SQL 3 06-08-2003 10:08:26
tablas relacionadas y update sql joanajj Conexión con bases de datos 4 05-08-2003 13:17:23


La franja horaria es GMT +2. Ahora son las 06:16:56.


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