• Viernes 8 de Noviembre de 2024, 17:53

Autor Tema:  Consulta complicada  (Leído 1781 veces)

MArio85

  • Miembro activo
  • **
  • Mensajes: 27
    • Ver Perfil
Consulta complicada
« en: Lunes 22 de Junio de 2009, 17:55 »
0
Hola a todos soy nuevo en mysql pero estuve leyendo la teoria de las consultas y sigo sin saber como puedo hacer esta consulta, les cuento una introduccion muy breve para no meterme en complicaciones de lo que necesito hacer. La empresa en la que trabajo da servicios electronicos de consultoria en comercio exterior, se recibe la solicitud de servicio con 3 datos importantes Aduana, No Autorizacion y Pedimento, el servicio se da en automatico y al final del mes se le cobra a cada cliente por el numero de servicios que obtuvo. Ahora bien, tengo las siguientes dos tablas:

Tabla 1: (Informacion de todos los servicios que dio la empresa en un periodo)
            bla bla        bla bla       Aduana      No Autorizacion      Pedimento
                    .
                   .
                   .

Tabla 2 (Pedimentos-Aduana - Patente por cliente)
Cliente            Aduana                  No Autorizacion             Rango inicial Pedimento                  Rango Final Pedimento
1                           67                       3435                             9000001                                       9000800
1                           67                       3435                             9009000                                       9010000
1                           07                       3435                             9000000                                       9999999
1                           07                       3066                             9000010                                       9000070
2
.
.



lo que necesito es crear una consulta en la que en base a estas dos tablas mencionadas, me saque cuales servicios corresponden al cliente digamos 1 o 2, como pueden ver en la tabla 2 el cliente puede tener diferentes convinaciones entre aduana No Autorizacion y Pedimento, y para hacerlo aun mas complicado aun y cuando la aduana y el No de aturizacion pueden ser el mismo se puede tener solamente un rango de los numeros de pedimento.
Cada aduana tiene diferentes patentes o numeros de autorizacion, y asi mismo cada patente tiene varios numeros de pedimento que en este año van del 9000000 al 9999999.


Gracias de antemano

shurik87

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Consulta complicada
« Respuesta #1 en: Sábado 27 de Junio de 2009, 23:38 »
0
Hola, como andas?. Disculpame pero no entiendo bien tu duda, proba con escribir un poco mejor las tablas y expresar mejor lo q necesitas, asi veo si te puedo ayudar.
Saludos.

MArio85

  • Miembro activo
  • **
  • Mensajes: 27
    • Ver Perfil
Re: Consulta complicada
« Respuesta #2 en: Martes 30 de Junio de 2009, 20:39 »
0
Hola, Disculpa la mala explicacion jaja. Va de nuez:

Tengo las Siguientes Dos Tablas:
Tabla 1: (Informacion de todos los servicios que dio la empresa en un periodo)
 Aduana____________________ No Autorizacion ____________________Pedimento
____.
____.
____.

Tabla 2 (Servicios de Cada Cliente)
Cliente________ Aduana____________ No Autorizacion____ Rango inicial  Pedimento____ RangoFinal Pedimento
___1____________ 67 ___________________3435__________ 9000001____________________ 9000800
___1____________ 07 ___________________3435__________ 9000001____________________ 9099999
___1____________ 07 ___________________3066__________ 9000001____________________ 9099999
___2____________ 67 ___________________3806__________ 9000000____________________9999999
___2____________ 07 ___________________3806__________ 9000000____________________9999999
___3____________ 67 ___________________3366__________ 9000000____________________9999999

En la Tabla 1 Se registran Todos los servicios Realizados durante un periodo, con sus tres campos clave Aduana, No Autorizacion, Pedimento, en donde cualquier combinacion de estos 3 campos es un servicio en especifico.
En la tabla 2 Se especifica los servicios(Combinacion de los tres Campos)  que corresponden a cada cliente por ejemplo: El cliente 3 Tiene asignados los pedimentos del 9000000 al 9999999 de la Aduana 67 con la autorizacion 3366.
El cliente 1 Tiene varios Rangos con diferentes Aduanas y/o No.Autorizacion asi como el Cliente 2.

Lo Que necesito hacer es realizar una consulta que me saque cuales Servicios de la tabla1 corresponden a algun cliente de la tabla2, segun la informacion de la Tabla2.
En pseudocodigo me imagino seria algo como esto:
SELECT * FROM Tabla1,Tabla2 WHERE ("Por Cada registro del cliente seleccionado en tabla2 Hacer: Tabla1.Aduana = Tabla2.Aduana AND Tabla1.No_Autorizacion = Tabla2.No_Autorizacion AND Tabla1.Pedimento 'Este Entre' Tabla2.R_Inferior 'Y' Tabla2.R_Superior ")

Nomas que no se como escribirlo en codigo o bien si asi es como debo hacer la consulta.

En las tablas llene los espacios con _ por que este editor elimina los espacios en blanco.

Saludos

MArio85

  • Miembro activo
  • **
  • Mensajes: 27
    • Ver Perfil
Re: Consulta complicada
« Respuesta #3 en: Martes 30 de Junio de 2009, 20:40 »
0
Hola, Disculpa la mala explicacion jaja. Va de nuez:

Tengo las Siguientes Dos Tablas:
Tabla 1: (Informacion de todos los servicios que dio la empresa en un periodo)
 Aduana____________________ No Autorizacion ____________________Pedimento
____.
____.
____.

Tabla 2 (Servicios de Cada Cliente)
Cliente________ Aduana____________ No Autorizacion____ Rango inicial  Pedimento____ RangoFinal Pedimento
___1____________ 67 ___________________3435__________ 9000001____________________ 9000800
___1____________ 07 ___________________3435__________ 9000001____________________ 9099999
___1____________ 07 ___________________3066__________ 9000001____________________ 9099999
___2____________ 67 ___________________3806__________ 9000000____________________9999999
___2____________ 07 ___________________3806__________ 9000000____________________9999999
___3____________ 67 ___________________3366__________ 9000000____________________9999999

En la Tabla 1 Se registran Todos los servicios Realizados durante un periodo, con sus tres campos clave Aduana, No Autorizacion, Pedimento, en donde cualquier combinacion de estos 3 campos es un servicio en especifico.
En la tabla 2 Se especifica los servicios(Combinacion de los tres Campos)  que corresponden a cada cliente por ejemplo: El cliente 3 Tiene asignados los pedimentos del 9000000 al 9999999 de la Aduana 67 con la autorizacion 3366.
El cliente 1 Tiene varios Rangos con diferentes Aduanas y/o No.Autorizacion asi como el Cliente 2.

Lo Que necesito hacer es realizar una consulta que me saque cuales Servicios de la tabla1 corresponden a algun cliente de la tabla2, segun la informacion de la Tabla2.
En pseudocodigo me imagino seria algo como esto:
SELECT * FROM Tabla1,Tabla2 WHERE ("Por Cada registro del cliente seleccionado en tabla2 Hacer: Tabla1.Aduana = Tabla2.Aduana AND Tabla1.No_Autorizacion = Tabla2.No_Autorizacion AND Tabla1.Pedimento 'Este Entre' Tabla2.R_Inferior 'Y' Tabla2.R_Superior ")

Nomas que no se como escribirlo en codigo o bien si asi es como debo hacer la consulta.

En las tablas llene los espacios con _ por que este editor elimina los espacios en blanco.

Saludos