solo mostrar los resultados proximos por id
Publicado por mrc (6 intervenciones) el 20/02/2019 19:56:05
Muy buenas a tod@s,
No sé si alguien me podrá ayudar con un problema que tengo al realizar una consulta a la base de datos y que me tiene atascado....
El caso es que quiero realizar una consulta sencilla a la base de datos (que tiene cerca de 1000 registros )que tengo ordenada de la siguiente manera con una clave primaria incremental "id":
DATOS:
id pos_1 pos_2 pos_3 pos_4 pos_5
*la id:1,2,3,4,5,6... 1000.
*cada una de las columnas tiene 1 dato.
*la consulta se realiza a través de un form sencillo con 5 inputs.
la query que realizo es:
sql1 = "SELECT * FROM listado WHERE (pos_1 = '$num1' AND pos_2 = '$num2' AND pos_3 = '$num3' AND pos_4 = '$num4' AND pos_5 = '$num5')";
$ejecutar1 = mysqli_query($conexion, $sql1);
$registro1 = mysqli_fetch_array($ejecutar1);
Hasta aquí todo bien, a través del index en el que tengo un form a modo de buscador con 5 inputs al introducirlos y darle a buscar en el submit la consulta me devuelve las lineas que se corresponden con la busqueda introducida.
El problema viene cuándo lo que yo quiero es que el SELECT sólo me devuelva los registros de la tabla de la base de datos QUE SE ENCUENTRAN CERCANOS POR "id".
Es decir, que el SELECT me devuelva sólo los registros o lineas que a parte de coincidir con las columnas: pos_1 pos_2 pos_3 pos_4 pos_5 esas lineas o registros disten no menos de X posiciones de "id" entre si.
Me explico, ahora mismo me devuelve todos los registros de la consulta que coindicen con los de la tabla de la base de datos como cualquier otra consulta, pero la idea es que me devuelva de todos esos registros SÓLO los que se encuentra proximos por ID, y que la distancia o cercania de IDs se pueda elegir. Así si yo realizo la query indicando que quiero que los resultados a mostrar no disten más de 5 posiciones POR ID, solo me muestre esas tuplas en las que los resultados son cercanos por ID ntre si.
Gracias
No sé si alguien me podrá ayudar con un problema que tengo al realizar una consulta a la base de datos y que me tiene atascado....
El caso es que quiero realizar una consulta sencilla a la base de datos (que tiene cerca de 1000 registros )que tengo ordenada de la siguiente manera con una clave primaria incremental "id":
DATOS:
id pos_1 pos_2 pos_3 pos_4 pos_5
*la id:1,2,3,4,5,6... 1000.
*cada una de las columnas tiene 1 dato.
*la consulta se realiza a través de un form sencillo con 5 inputs.
la query que realizo es:
sql1 = "SELECT * FROM listado WHERE (pos_1 = '$num1' AND pos_2 = '$num2' AND pos_3 = '$num3' AND pos_4 = '$num4' AND pos_5 = '$num5')";
$ejecutar1 = mysqli_query($conexion, $sql1);
$registro1 = mysqli_fetch_array($ejecutar1);
Hasta aquí todo bien, a través del index en el que tengo un form a modo de buscador con 5 inputs al introducirlos y darle a buscar en el submit la consulta me devuelve las lineas que se corresponden con la busqueda introducida.
El problema viene cuándo lo que yo quiero es que el SELECT sólo me devuelva los registros de la tabla de la base de datos QUE SE ENCUENTRAN CERCANOS POR "id".
Es decir, que el SELECT me devuelva sólo los registros o lineas que a parte de coincidir con las columnas: pos_1 pos_2 pos_3 pos_4 pos_5 esas lineas o registros disten no menos de X posiciones de "id" entre si.
Me explico, ahora mismo me devuelve todos los registros de la consulta que coindicen con los de la tabla de la base de datos como cualquier otra consulta, pero la idea es que me devuelva de todos esos registros SÓLO los que se encuentra proximos por ID, y que la distancia o cercania de IDs se pueda elegir. Así si yo realizo la query indicando que quiero que los resultados a mostrar no disten más de 5 posiciones POR ID, solo me muestre esas tuplas en las que los resultados son cercanos por ID ntre si.
Gracias
Valora esta pregunta
0