Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-06-2013
daragor daragor is offline
Miembro
NULL
 
Registrado: ago 2012
Posts: 91
Poder: 12
daragor Va por buen camino
Ayuda con una consulta necesaria!

Hola amigos, recurro a uds. xq me encuentro sin poder encontrar la solucion a lo q necesito..

Yo tengo una tabla cargada con varios datos, supongamos movimientos de un expte.
Dentro de los datos importantes en cada registro esta el nro. de expte (o codigo unico) y el orden en que se realizó el pase.. mas alla de la fecha y otros datos q no vienen al caso.

N.exp Ord
1001 | 1
1001 | 2
1001 | 3
1002 | 1
1002 | 2
1005 | 1
1005 | 2
1005 | 3
1005 | 4
etc...

Lo que necesito es hacer una consulta que tome todos los expedientes cargados, pero solo el ultimo movimiento de cada uno! el cual esta determinado por el orden (ord).. y asi conseguir un query con esos datos. Expte y Ultimo Movimiento nada más!
Podra alguien ayudarme y decirme como se arma esa consulta, ese SELECT ? muchas gracias!
__________________
Mi Blog: Webscom (Software libre)
Responder Con Cita
  #2  
Antiguo 17-06-2013
Avatar de look
look look is offline
Miembro
 
Registrado: sep 2007
Ubicación: The Shire
Posts: 656
Poder: 17
look Va camino a la fama
Cita:
Empezado por daragor Ver Mensaje
Hola amigos, recurro a uds. xq me encuentro sin poder encontrar la solucion a lo q necesito..

Yo tengo una tabla cargada con varios datos, supongamos movimientos de un expte.
Dentro de los datos importantes en cada registro esta el nro. de expte (o codigo unico) y el orden en que se realizó el pase.. mas alla de la fecha y otros datos q no vienen al caso.

N.exp Ord
1001 | 1
1001 | 2
1001 | 3
1002 | 1
1002 | 2
1005 | 1
1005 | 2
1005 | 3
1005 | 4
etc...

Lo que necesito es hacer una consulta que tome todos los expedientes cargados, pero solo el ultimo movimiento de cada uno! el cual esta determinado por el orden (ord).. y asi conseguir un query con esos datos. Expte y Ultimo Movimiento nada más!
Podra alguien ayudarme y decirme como se arma esa consulta, ese SELECT ? muchas gracias!
Código SQL [-]

select 
  distinct n_exp,
 (select max(ord) from registro b where b.n_exp = b.n_exp)as ord
from 
  registro a
__________________
all your base are belong to us
Responder Con Cita
  #3  
Antiguo 17-06-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Creo que también puedes poner algo así:

Código SQL [-]
SELECT nexp, max(ord)
FROM tbExpedientes
group by nexp

Por cierto, para otra vez procura poner un título más descriptivo a tu pregunta, gracias
Responder Con Cita
  #4  
Antiguo 18-06-2013
daragor daragor is offline
Miembro
NULL
 
Registrado: ago 2012
Posts: 91
Poder: 12
daragor Va por buen camino
Muchas gracias compañeros.. lo de casimiro q es mas simple funciona bien, pero.. tengo un problema, no puedo hacer q tome todos los datos de la tabla, solo esos 2 (nexp y ord)
QUE debo agregar para tomar todos los datos?

Gracias!
PD: casimiro no puedo editar el titulo, siempre trato de ser especifico..
__________________
Mi Blog: Webscom (Software libre)
Responder Con Cita
  #5  
Antiguo 18-06-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Creo que necesitas un simple tutorial sql

Añades los campos que quieras al select. Y en el group by pones los mismos campos.
Responder Con Cita
  #6  
Antiguo 18-06-2013
daragor daragor is offline
Miembro
NULL
 
Registrado: ago 2012
Posts: 91
Poder: 12
daragor Va por buen camino
Yo ya habia agregado todos los campos que necesito al select pero no los habia agregado al group by, xq obviamente solo quiero el orden maximo de cada expediente.. no todo..
No funciona como vos me decis casimiro.. se pierde el filtrado de "tomar solo el ord maximo"
__________________
Mi Blog: Webscom (Software libre)
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
Ayuda con consulta SQL mordaz Firebird e Interbase 6 09-02-2013 03:12:36
¿es necesaria la BDE si usamos TDataSource? coso SQL 5 04-08-2008 15:16:17
Ayuda con consulta SQL n03l SQL 4 18-04-2007 22:03:40
Ayuda Con Consulta enecumene Conexión con bases de datos 26 15-07-2006 01:58:06
¿Qué instrucción es necesaria para abrir un archivo PDF? vhirginia Varios 10 07-05-2004 00:05:36


La franja horaria es GMT +2. Ahora son las 20:02:08.


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