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 17-01-2004
cotoprix cotoprix is offline
Registrado
 
Registrado: dic 2004
Posts: 7
Poder: 0
cotoprix Va por buen camino
Post Consulta SQL para datos ordenados en otra tabla

Requiero hacer una consulta donde los datos deberian aparecer ordenados en funcion de unos datos ordenados en otra tabla. Me explico. Tengo una tabla1 donde ordeno unos datos de fechas pej '0310' que significa octubre 2003 y tengo otra tabla2 donde hay una cantidad de datos y uno de sus campos es la fecha y su nomenclatura es igual. Cuando lanzo la consulta deberian salirme ordenados de acuerdo a los datos que se leen de tabla1 en ese mismo orden.Como realizaria la consulta?
Responder Con Cita
  #2  
Antiguo 17-01-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Creo que tendrás que explicarte un poco más, pero si solo pides como ordenar los datos por un campo en SQL sería

Código:
Select * 
From MiTabla
Order by MiCampo
Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 19-01-2004
ramiretor ramiretor is offline
Miembro
 
Registrado: may 2003
Ubicación: México
Posts: 196
Poder: 21
ramiretor Va por buen camino
Hola:
Si te entendí bien lo que necesitas es hacer join con la tabla que trae el campo por el que quieres ordenar.

Saludos
__________________
Ernesto R.
Responder Con Cita
  #4  
Antiguo 24-01-2004
cotoprix cotoprix is offline
Registrado
 
Registrado: dic 2004
Posts: 7
Poder: 0
cotoprix Va por buen camino
El problema es el siguiente: tengo que recuperar unos datos de una tabla pero deben estar ordenados de acuerdo al orden que aparecen unos datos en otra tabla, ejemplo:
tabla1
nombre edad ingreso
manuel 23 0010
juan 25 0103
rosa 18 0110
jose 30 0310
rafael 40 0010

Tabla2
ingreso
0010
0103
0110
0310
en la tabla 2 esta el orden que se deben recuperar los datros, debo hacer la consulta de tal manera que me arroje el siguiente resultado

nombre edad ingreso
manuel 23 0010
rafael 40 0010
juan 25 0103
rosa 18 0110
jose 30 0310

primero los datos de ingreso 0010,0103,0110,0310. Como le podria hacer requiero suayuda. Gracias
Responder Con Cita
  #5  
Antiguo 24-01-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Código:
select *
from tabla1 t1 
           inner join tabla2 t2 on (t2.ingreso = t1.ingreso)
order by t2.ingreso
Responder Con Cita
  #6  
Antiguo 26-01-2004
cotoprix cotoprix is offline
Registrado
 
Registrado: dic 2004
Posts: 7
Poder: 0
cotoprix Va por buen camino
Talking

Gracias cadetill el codigo me funciono perfectamente, pero cuando en la tabla2 se presenta asi
Tabla2
ingreso
0003
0006
0010
0011
0103
0110
0310
cuando ordena presenta los resultados en orden diferente, 0011,0010,0006,0003 y no debiera hacerlo, al final le coloco en la orden order by t2.ingreso desc y me sigue dando el mismo ordenamiento como lo resuelvo para que sea 0003,0006,0010,0011,0103,0110,0310.Gracias de antemano
Responder Con Cita
  #7  
Antiguo 26-01-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Seguro?????

Al ser una campo alfanumerico.... en la base de datos están los 0 al principio de los números? Es decir, su longitud siempre es de 4?
Responder Con Cita
  #8  
Antiguo 26-01-2004
cotoprix cotoprix is offline
Registrado
 
Registrado: dic 2004
Posts: 7
Poder: 0
cotoprix Va por buen camino
Smile

El campo es de texto y de longitud 4, pero eso me pasa con otros datos, ej: 9903,9908,9909...que los ordena 9909,9908,9903 entonces no me los emite como deben estar ordenados....????. Sigo intentando, ya recupero la consulta porque en el ejemplo me falto 1 campo que es grupo, donde es numerico y me permite recuperar los datos agrupados por ese campo, pero no en la fecha de ingreso como deben...Gracias
Responder Con Cita
  #9  
Antiguo 26-01-2004
cotoprix cotoprix is offline
Registrado
 
Registrado: dic 2004
Posts: 7
Poder: 0
cotoprix Va por buen camino
Smile

El campo es de texto y de longitud 4, pero eso me pasa con otros datos, ej: 9903,9908,9909...que los ordena 9909,9908,9903 entonces no me los emite como deben estar ordenados....????. Sigo intentando, ya recupero la consulta porque en el ejemplo me falto 1 campo que es grupo, donde es numerico y me permite recuperar los datos agrupados por ese campo, pero no en la fecha de ingreso como deben...Gracias
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


La franja horaria es GMT +2. Ahora son las 12:24:22.


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