En la sección anterior vimos los operadores de comparación, los siguientes tres que veremos algunos autores los consideran operadores lógicos y otros autores los consideran de comparación: BETWEEN, IN y LIKE.
Operadores Lógicos/De comparación en SQL.
Operador “BETWEEN … AND …” (ENTRE … Y …).
Sintaxis: expresión BETWEEN valor-mínimo AND valor-máximo
Si la “expresión” a comparar es mayor o igual al valor-mínimo y menor o igual al valor-máximo, es decir si está en el rango dado, regresará verdadero, en caso contrario regresará falso. Veamos en la práctica. Escribe, ejecuta y observa los resultados de la siguiente instrucción SELECT:
Como puedes observar en los resultados, solamente se muestran las filas que cumplan la condición de que el valor de su columna “id_producto” esté entre 14812 y 14816 inclusive. Todas las filas que no estén dentro de este rango, son ignoradas ya que la condición para esas filas evalúa a falso.
Operador “LIKE” (COMO).
Sintaxis: expresión LIKE patrón
Este operador regresará verdadero si la “expresión” coincide con el patrón de búsqueda dado. El patrón es una cadena de caracteres que puede o no contener los caracteres comodines “%” (porcentaje) y “_” (guión bajo).
El “%” (símbolo de porcentaje) dentro del patrón del LIKE, representa o coincide con cualquier secuencia de cero o más caracteres en la cadena.
Un “_” (guión bajo) dentro del patrón del LIKE, representa o coincide con un único caracter en la cadena.
Veámoslo en la práctica. Escribe, ejecuta y analiza los resultados de la siguiente instrucción SQL:
La instrucción mostrará todas aquella filas que en su columna “nombre” contengan cualquier secuencia de caracteres o cero caracteres seguida de las letras “red” y que al final tengan cualquier secuencia de caracteres o cero caracteres. Si observas LIKE, al comparar el patrón, ignora las minúsculas y mayúsculas, basta con que contenga esa secuencia de letras. Desliza hacia abajo para ver más filas y trata de entender porqué esas filas fueron seleccionadas.
Ahora vamos a filtrar todas aquellas filas que valor en su columna “nombre” terminen con ” red” (observa que hay un espacio antes de “red”) y observa los resultados:
El comodín % puede aparecer cualquier número de veces en el patrón LIKE y no sólo al principio y/o al final del patrón, por ejemplo:
Observa que mostrará todos aquellos productos que su nombre comiencen con “tarjeta” y terminen con “red” sin importar los caracteres que existan entre estas dos secuencias de caracteres. Trata de crear tu propio patrón LIKE y pruébalo.
Veamos ahora un ejemplo del uso del comodín “_” en un patrón LIKE. Ambos comodines pueden existir en un mismo patrón LIKE.
Supongamos que queremos obtener todos los registros que el valor de su columna “no_parte” (número de parte del producto) conste de 5 letras y que comience con la letra “L” y termine con el caracter cero (0).
El patrón LIKE a usar sería: la letra “L”, tres guiones bajos y el caracter 0 (cero). Sería así ‘L___0’. Escribe y ejecuta la consulta y observa los resultados.
Recuerda que el comodín “_” (guión bajo) representa cualquier caracter, pero sólo uno. Los tres guiones bajos en el patrón LIKE de la sentencia anterior, indican tres caracteres, cualesquiera, pero sólo tres. Cambia el patrón del LIKE del ejemplo anterior reemplazando la letra “L” por la letra “T” y ve que pasa.
Operador IN (EN).
Sintaxis: expresión IN (lista-valores)
El operador IN regresará verdadero cuando el valor de la expresión se encuentre en la lista de valores dados, en caso contrario regresará falso. Veamos un ejemplo. Escribe, ejecuta y observa los resultados de la siguiente sentencia SQL:
La sentencia anterior le indica a la consulta que solo muestre las filas que en su columna “id_marca” tengan los valores listados: 627, 628 o 624. El opeador IN también funciona con lo tipos de datos TEXT (texto). Escribe y ejecuta la sentencia siguiente y observa los resultados:
En el ejemplo anterior le estamos indicando a la instrucción SELECT que sólo muestre las filas donde el valor de “nombre” sea igual a las palabras contenidas en la lista: ‘Pegamento’ o ‘Folder’.
Practica con los tres operadores que hemos visto en esta sección: BETWEEN, LIKE e IN.
Hasta el momento sólo hemos filtrado filas o registros aplicando una sola condición que nos regresa falso o verdadero. En la siguiente sección veremos los operadores lógicos que permiten combinar dos condiciones o más en la cláusula WHERE, es decir, formaremos condiciones un poco más complejas combinando valores booleanos falsos y verdaderos.
¡Hasta pronto!