Veamos, estoy desarrollando una aplicación web, para la cual necesito mostrar una lista paginada de resultados, y el detalle del registro seleccionado.
Para ello tengo una SQL limitada al nº de registros que quiero mostrar por página, ordenada por parámetros arbitrarios:
Código MySQL:
Ver originalSELECT id
, nombre
, pa
ís, provincia FROM empresas ORDER BY parametro1, prametro2 LIMIT(registro_inicial, registro_por_pagina)
Por otro lado tengo el registro que deseo mostrar:
Necesito calcular, en qué posición de la lista de la búsqueda anterior (de acuerdo a los parámetros introducidos por el usuario para ordenar los resultados) se halla el registro seleccionado, para poder determinar qué página debo mostrar y resaltar dicho registro.
Y todo ello con la menor cantidad de peticiones SQL posibles

Tampoco me sirve hacer la select del listado completo e ir recorriendo los registros uno a uno hasta dar con el indicado llevando un contador, porque en esa tabla puede haber miles de registros, y la razón de que estemos paginándola es para agilizar la consulta.
Gracias de antemano con toda las sugerencias que me podáis ofrecer