SELECT ... GROUP BY

04/05/2004 - 14:19 por Guillermo | Informe spam
Hay alguna cláusula del tipo de LAST que hay en Access, para sacar de una
agrupación de registros, el último o el primer registro.
Esto es para sacar de un log de accesos a un sistema, el último acceso que
hizo cada uno de los usuarios.
Ahora lo estoy haciendo con select anidados, pero esta solución no me gusta
mucho.

Select
usuarios.nombre,
(select top 1 fecha from log where codigo = usuarios.codigo order by fecha
desc)
From usuarios

Si no hay una cláusula para esto, hay alguna otra forma mas performante para
hacer esto mismo

Gracias
 

Leer las respuestas

#1 Maxi
04/05/2004 - 14:31 | Informe spam
Hola, no hay algo asi :(, pero podrias usar una funcion de agregado como por
ej la Max

ej:

Select
usuarios.nombre,max(log.fecha) from usuarios left join log on
log.codigo = usuarios.codigo group by usuarios.nombre



Suerte


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Guillermo" escribió en el mensaje
news:
Hay alguna cláusula del tipo de LAST que hay en Access, para sacar de una
agrupación de registros, el último o el primer registro.
Esto es para sacar de un log de accesos a un sistema, el último acceso que
hizo cada uno de los usuarios.
Ahora lo estoy haciendo con select anidados, pero esta solución no me


gusta
mucho.

Select
usuarios.nombre,
(select top 1 fecha from log where codigo = usuarios.codigo order by


fecha
desc)
From usuarios

Si no hay una cláusula para esto, hay alguna otra forma mas performante


para
hacer esto mismo

Gracias







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.661 / Virus Database: 424 - Release Date: 20/04/2004

Preguntas similares