0 votos
por (20 puntos) en SQL
Hola, necessito vuestra ayuda.

Estoy haciendo una búsqueda del código de personal a partir de un nombre introducido, el problema es q como conozco a la gente, seguro que no escriben el nombre bien, o entero o justo como sale a la BD, por eso me gustaría hacer una búsqueda aproximada.

Se que hay alguna manera, como poner * o interrogantes pero el problema es que yo le paso una varible, p.e "nombre" y cuando hago la búsqueda, me coje la variable como una cadena de carácteres, y me busca un nombre igual o que comience con "nombre" en lugar del contenido de la variable.

Es muy importante para mi vuestra ayuda, pues es para un trabajo, así que quien me ayude tiene un café pagado :)

Muchas gracias por adelantado.

Cristina


1 Respuesta

0 votos
por (4.3k puntos)
@elisabetha,

Tienes que añadir un tanto por ciento delante y detrás de la cadena. De tal manera que si pones %al% te buscaría todos los nombres que tuviesen un "al" en el nombre: alejandro, alberto, ronaldo,.....

La query te quedaría de la siguiente forma.... ten cuidado porque tienes que utilizar la sentencia LIKE en vez de el igual

SELECT nombre

FROM tabla

WHERE nombre LIKE '%al%'

Espero que te sirva. Y ya quedamos para tomar el cafe ;-)


Preguntas relacionadas

0 votos
0 respuestas
preguntado por Geovanny (70 puntos) Nov 5, 2019 en SQL
0 votos
1 respuesta
0 votos
2 respuestas
preguntado por Iggy16 (540 puntos) Ene 28, 2016 en Java
0 votos
0 respuestas
preguntado por Angel0320 (20 puntos) Jul 19, 2020 en Bases de Datos
Bienvenido a Dudas de Programación, donde puedes hacer preguntas y recibir respuestas sobre los problemas más frecuentes de los lenguajes de programación, frameworks de desarrollo y bases de datos que utilices. Foro de Línea de Código

Categorías

...