hola prodigic:
No me quedó claro cuál es el criterio que estás siguiendo para excluir los registros, si tomamos sólo los valores de alto y ancho tenemos lo siguiente:
Código:
ancho|alto
-------------
20|21
30|23
Ahora bien, para la primera pareja de valores (ancho = 20, alto = 30) tienes lo siguiente:
Código:
ancho - parámetro_ancho|alto - parámetro_alto
-------------
20-20 = 0|21-30 = 9
30-20 = 10|23-30 = 7
por lo tanto la suma de las diferencias es menor para el primer registro (0 + 9 es menor que 10 + 7)
para la segunda pareja de valores (ancho = 28, alto = 20) tendríamos
Código:
ancho|alto
-------------
20-28=8|21-20=1
30-28=2|23-20=5
por lo tanto, la suma de las diferencias es menor para el segundo registro (2 + 5 es menor que 8 + 1)
Si estoy en lo correcto y esto es lo que necesitas podrías obtenerlo más o menos así:
Observa que utilizo el valor absoluto de las diferencias, para que no importe si es una diferencia positiva o negativa). Hay un caso que no mencionas cómo los tratarías y es si por ejemplo tienes los parámetros de ancho = 20 y alto = 20 y en tu tabla tuvieras los siguientes valores
Código:
ancho|alto
-------------
18|18
22|22
Aquí la diferencia total para ambos casos es 4, la consulta por lo tanto presentaría ambos casos.
Saludos y espero tus comentarios.
Leo.