![]() |
Posicion en una tabla segun el valor del campo Hola, tengo una consulta Tengo una base de datos y una tabla. Digamos que los registros son id nombre ranking 1 Luis 9 2 Mario 7 3 Pedro 13 4 Jorge 8 Lo que quiero es hacer un select where id = 2 lo que quiero saber qué posicion tomaria si agrupo los registros por ranking. Sé cómo hacer si tengo todos los registros en un arreglo y hago un bucle para ordenarlos, pero no quiero que haya tanto trabajo, sino con un solo query o algo más simple... alguien sabe cómo lo puedo hacer? |
el id nunca cambia su valor(a menos que lo modifiques) y por lo tanto aunque lo ordenes no tienes problema al hacer select where id = 2, esto quedaria asi(ya ordenado por ranking): id nombre ranking 2 Mario 7 4 Jorge 8 1 Luis 9 3 Pedro 13 no tendrias problemas. saludos. |
No entiendo, creo que me expliqué mal.. en el caso que diga where id = 2 quiero que me devuelva 4 si hago where id = 4 quiero que me devuelva 3 si hago where id = 3 quiero que me devuelva 1 osea como si estuviera con un order by ranking desc pero no quiero que me devuelva toda la tabla, sino la posicion donde estaría el registro si hago el order by ranking desc |
oops; entendi mal, pero bueno se me ocurre que crees una tabla temporal que tenga: campo1= posicion(autoincrement); campo2= id=id esto es, haces tu consulta trayendo solo el "id" y lo colocas en la tabla temporal y luego haces la consulta select posicion from tablatemporal where id = 2. eso es lo único que se me ocurre por el momento. espero y te sirva de algo. saludos. |
select * from ranking order by ranking ASC limit 0,1 primer lugarr select * from ranking order by ranking ASC limit 1,1 segundo select * from ranking order by ranking ASC limit 2,1 tercero select * from ranking order by ranking ASC limit 3,1 cuarto ojala te sirva |
Claro eits, esa es una opción, la voy a analizar, porque tengo que calcular cuantos registros abran y si vale la pena. Pero igual gracias |
| La zona horaria es GMT -6. Ahora son las 19:19. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.