• Sábado 21 de Diciembre de 2024, 11:27

Autor Tema:  Consulta Tres Tablas  (Leído 4757 veces)

dreamer

  • Miembro activo
  • **
  • Mensajes: 34
    • Ver Perfil
Consulta Tres Tablas
« en: Martes 29 de Noviembre de 2005, 12:07 »
0
Hola compañeros(as)

Estoy haciendo una aplicación en visual donde necesito hacer una consulta a tres tablas, según lo que he leído se puede a través del INNER JOIN mis tres tablas son Maestro, CodCargo y CentroCosto .

La consulta la tengo asi, pero me falta agregar una condición mas que si el empleado es de cierto nivel que me arroje los resultados por pantalla.

MiRec.Open "select * " & _
    "from (Maestro INNER JOIN CodCargo ON Maestro.cod_cargo=CodCargo.cod_cargo)" & _
    "INNER JOIN CentroCosto ON Maestro.cc= CentroCosto.CC"

Ósea me faltaría agregar algo así como esto:

……and Maestro.nivel= " + CboBuscarNivel.Text + ";"


Entonces completo mi consulta y quedaría así:

MiRec.Open "select * " & _
    "from (Maestro INNER JOIN CodCargo ON Maestro.cod_cargo=CodCargo.cod_cargo)" & _
    "INNER JOIN CentroCosto ON Maestro.cc= CentroCosto.CC and Maestro.nivel= " + CboBuscarNivel.Text + ";"

Maestro
NOMBRES      NIVEL       COD_CARGO       CC
pablito      8       8088                       5691
pedrito      16       1930                       2168

COD_CARGO
NOMBRE CARGO              COD_CARGO
Vendedor                              8088
Secretaraia              7459

CC                             NOMBRE_CENTRO_COSTO
5691                             Gerencia
2168                             Relaciones Publicas

Entonces es consultar por todas las personas que tengan nivel 8, el resultado seria

Nombre   Nivel      Cargo                   Centro Costo
Pablito   8      Vendedor      Gerencia

Espero haberme explicado bien y tambien que puedan ayudarme.

De antemano se agradece

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Consulta Tres Tablas
« Respuesta #1 en: Martes 29 de Noviembre de 2005, 15:08 »
0
Cita de: "dreamer"
Hola compañeros(as)

Estoy haciendo una aplicación en visual donde necesito hacer una consulta a tres tablas,.

Si quieres tev traslado la discuion al foro de visual basic o puedes ser mas puntual para saber si tu problema es realmente de base de datos o de uso del visual basic.
no no te has explicado bien.-.-..

comenzadno que las bases de datos no se hacen en visual... en visual, supongo visual basic, alli haces la aplicacion, pero la base de datos es otro rollo.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

dreamer

  • Miembro activo
  • **
  • Mensajes: 34
    • Ver Perfil
Re: Consulta Tres Tablas
« Respuesta #2 en: Miércoles 30 de Noviembre de 2005, 04:05 »
0
Estoy haciendo una aplicación en visual donde necesito hacer una consulta a tres tablas.............

dice bien claro estoy haciendo una aplicacion en visual basic y no dice estoy haciendo una base de datos en visual basic.

De todas maneras gracias por tu interes.

Güorker

  • Miembro MUY activo
  • ***
  • Mensajes: 383
    • Ver Perfil
Re: Consulta Tres Tablas
« Respuesta #3 en: Miércoles 30 de Noviembre de 2005, 08:36 »
0
Hola,

segun lo que he entendido es que no sabes muy bien donde poner la condición de que el empleado tenga un cierto nivel.

Ese tipo de condiciones se ponen en la clausula WHERE de una consulta de la siguiente manera:
Código: Text
  1.  
  2. select * from (Maestro INNER JOIN CodCargo ON Maestro.cod_cargo=CodCargo.cod_cargo) INNER JOIN CentroCosto ON Maestro.cc= CentroCosto.CC
  3. WHERE Maestro.nivel= " + CboBuscarNivel.Text + ";"
  4.  
  5.  

Espero que te sirva, saludos
[size=109]Ondo ibili, gutxi gastau eta bueltak amari[/size]
[size=109]Pasalo bien, gasta poco y las vueltas a tu madre[/size]

dreamer

  • Miembro activo
  • **
  • Mensajes: 34
    • Ver Perfil
Re: Consulta Tres Tablas
« Respuesta #4 en: Miércoles 30 de Noviembre de 2005, 14:50 »
0
Gracias por tu ayuda Güorker.

Pero tenia la consulta asi y me arroja dos resultados que emcuentra en la tabla maestro de la base de datos y son 3 los resultados entonces nose que puede ser.

de todas maneras te dejo la consulata como la tengo en la actualidad (aun me filtran dos resultados (cuando se elige el nivel 22)  cuando deberian ser tres.)

MiRec.Open "select * " & _
    "from (Maestro INNER JOIN CodCargo ON Maestro.cod_cargo=CodCargo.cod_cargo)" & _
    "INNER JOIN CentroCosto ON Maestro.cc= CentroCosto.CC where Maestro.nivel= " + CboBuscarNivel.Text + ";"

No entiendo que sera...seguiremos intentando.

Nuevamente Gracias

dreamer

  • Miembro activo
  • **
  • Mensajes: 34
    • Ver Perfil
Re: Consulta Tres Tablas
« Respuesta #5 en: Miércoles 30 de Noviembre de 2005, 17:13 »
0
COMPAÑEROS(AS)

YA LO SOLUCIONE LES AGRADESCO A TODOS POR LA AYUDA, PACIENCIA E INTERES POR EL TEMA.

MIL GRACIAS NUEVAMENTE

SALUDOS DESDE VIÑA DEL MAR CHILE.