Encuentra valor en un conjunto en la base de datos MySQL
- Crear una tabla en MySQL
-
Use
FIND_IN_SET()
para encontrar un valor en un conjunto en una base de datos MySQL
En este tutorial, nuestro objetivo es explorar cómo verificar la ocurrencia de un valor o encontrar un valor en un conjunto en una base de datos MySQL.
Esto se puede hacer con la ayuda de la función IN()
o la función FIND_IN_SET()
. Exploremos el uso de la función FIND_IN_SET()
en la base de datos MySQL.
La función FIND_IN_SET()
toma principalmente dos argumentos. El primer argumento es el valor a buscar, y el segundo es el conjunto donde se busca el valor.
Esto se puede ilustrar como FIND_IN_SET("search", {search_here})
. Intentemos usar esta función en nuestro servidor MySQL.
Crear una tabla en MySQL
Antes de comenzar, crearemos un conjunto de datos ficticio para trabajar. Aquí crearemos una tabla, student_details
, junto con algunas filas.
-- create the table student_details
CREATE TABLE student_details(
stu_id int,
stu_firstName varchar(255) DEFAULT NULL,
stu_lastName varchar(255) DEFAULT NULL,
primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName)
VALUES(1,"Preet","Sanghavi"),
(2,"Rich","John"),
(3,"Veron","Brow"),
(4,"Geo","Jos"),
(5,"Hash","Shah"),
(6,"Sachin","Parker"),
(7,"David","Miller");
La consulta anterior crea una tabla con filas que contienen los nombres y apellidos de los estudiantes. Para ver las entradas en los datos, usamos el siguiente código:
SELECT * FROM student_details;
El código anterior daría el siguiente resultado:
stu_id stu_firstName stu_lastName
1 Preet Sanghavi
2 Rich John
3 Veron Brow
4 Geo Jos
5 Hash Shah
6 Sachin Parker
7 David Miller
Use FIND_IN_SET()
para encontrar un valor en un conjunto en una base de datos MySQL
Hemos creado con éxito nuestra tabla student_details
y la hemos visualizado. Tratemos de encontrar un nombre particular en el conjunto de stu_firstName
.
La sintaxis para llevar a cabo la tarea mencionada anteriormente se puede ilustrar de la siguiente manera:
SELECT FIND_IN_SET("value_to_be_searched", {set});
Aquí, como podemos ver, el término value_to_be_searched
será reemplazado por el valor real que necesitamos buscar en nuestra tabla.
Identifiquemos si existe el valor David
en la columna stu_firstName
. Esto se puede hacer con la ayuda de la siguiente consulta:
SELECT FIND_IN_SET("David", stu_firstName) as boolean_here from student_details ;
La salida del código mencionado anteriormente se puede ilustrar de la siguiente manera:
boolean_here
0
0
0
0
0
0
1
Nota: Es importante notar la palabra clave
AS
utilizada aquí como un alias. Usamos alias para que nuestra consulta sea más legible y completa.
Sin embargo, esta función solo está disponible en MySQL versión 4.0 y posteriores. Por lo tanto, hemos entendido con éxito cómo usar la función FIND_IN_SET()
en MySQL.