Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

como mostrar el maximo de una columna

Estas en el tema de como mostrar el maximo de una columna en el foro de Bases de Datos General en Foros del Web. bueno tengo una tabla donde la primera columna tiene como nombre "codigo" es un entero auto incrementado bueno como ago una consulta para que me ...
  #1 (permalink)  
Antiguo 23/02/2011, 08:22
Avatar de yense  
Fecha de Ingreso: febrero-2008
Ubicación: Perú Lima
Mensajes: 340
Antigüedad: 16 años, 9 meses
Puntos: 3
Pregunta como mostrar el maximo de una columna

bueno tengo una tabla donde la primera columna tiene como nombre "codigo"

es un entero auto incrementado bueno como ago una consulta para que me muestre el ultimo codigo ingresado o mejor dicho el mayor de esa columna

ejemplo tengo

1-------articulo1--------detalle1
2-------articulo2--------detalle2
3-------articulo3--------detalle3
4-------articulo4--------detalle4
5-------articulo5--------detalle5
6-------articulo6--------detalle6

y bueno solo que muestre el codigo 6 redundando
__________________
©® -> Conocer algo mas es dar un paso mas <- ®©
  #2 (permalink)  
Antiguo 23/02/2011, 08:42
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: como mostrar el maximo de una columna

Hola yense:

Este tipo de consultas se ha tratado muchas veces en el foro, te recomiendo que antes de decidirte por publicar una nueva pregunta utilices la herramienta de búsqueda del foro. También puedes preguntarle a San Google, casi siempre tiene buenas respuestas.

Prueba con esto:

Código:
select * from TuTabla T1 inner join 
(select max(codigo) max_codigo from TuTabla) T2 on T1.codigo = T2.max_codigo
Saludos
Leo.
  #3 (permalink)  
Antiguo 23/02/2011, 08:49
Avatar de yense  
Fecha de Ingreso: febrero-2008
Ubicación: Perú Lima
Mensajes: 340
Antigüedad: 16 años, 9 meses
Puntos: 3
De acuerdo Respuesta: como mostrar el maximo de una columna

Bueno si pero quiero saber si hay mas metodos de resolver ese detalle

asi como el que mas uso es

Código MySQL:
Ver original
  1. select codigo from tabla where codigo = (select max(codigo) from tabla) limit 1
bueno de esa manera lo resuelvo eso

pero gracias de todos modos
__________________
©® -> Conocer algo mas es dar un paso mas <- ®©
  #4 (permalink)  
Antiguo 23/02/2011, 09:03
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: como mostrar el maximo de una columna

Hola yense:

Según lo que comentas en tu post entonces te equivocaste en el planteamiento del problema. En lugar de preguntar cómo obtener el último registro de una tabla deberías haber preguntado si existe algún método mejor al que estás utilizando tú para la obtención del máximo, pero bueno, eso es simplemente cuestión de redacción.

Si observas un poco, tu consulta y la mía son prácticamente las mismas, con la diferencia de que en mi caso estoy utilizando un INNER JOIN en lugar de hacer la igualación de los id's en el where. Esta pequeña diferencia tiene un impacto bastante considerable en el rendimiento de la consulta, sobre todo cuando tus tablas tienen muchos registros. Si tienes alguna tabla con muchos registros podrías hacer pruebas de rendimiento entre ambas consultas. Sin temor a equivocarme te diría que la consulta que yo pongo será más eficiente que la tuya.

Es por esa misma razón que se recomienda utilizar la cláusula JOIN cuanto unes dos o más tablas o consultas:

Código:
--sin usar INNER JOIN
from Tabla1, Tabla2 where Tabla1.id = Tabla2.id 

--utilizando INNER JOIN
from Tabla1 inner join Tabla 2 on Tabla1.id = Tabla2.id
Aunque el resultado de ambas consultas es el mismo la diferencia entre los tiempos de respuesta puede ser enorme.

Saludos
Leo.

Etiquetas: columna, maximo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:16.