Web.SQL.Recuperación de Datos.

Manipulación de Datos.

Ismael Royano Gómez
Enredando con la WEB.
5 min readJun 21, 2018

--

Para realizar las consulas se utiliza la instrucción SELECT. Su sintáxis es la siguiente:

Condiciones.

Claúsula Where. Esta instrucción sirve para especificar una condición a la hora de mostrar resultados.

Vamos a ver los operadores que se pueden utilizar con where:

  • =. Igual a.
  • <>. Distinto a.
  • >. Mayor a.
  • <. Menor a.
  • >=. Mayor e igual a.
  • <=. Menor e igual a.
  • AND, OR, NOT. Son operadores que se usan para condiciones compuestas.
  • LIMIT. Limita el número de registros que se van a mostrar.
  • IN. Especifica múltiples valores para una columna.
  • BETWEEN. Utiliza para buscar en rangos de valores.
  • LIKE. Se utiliza para las búsquedas de aproximación.

AND, OR, NOT.

Vamos a ver algunos ejemplos de condiciones compuestas:

una de las dos o las dos a la vez:

  • Personas sean mayores de 19, sean o no de badajoz, ya que se cumple la primera condición.
  • Personas que sean de Badajoz, sean o no de 19, ya que se cumple la segunda condición.
  • Personas que sean mayores de 19 y que sean de Badajoz.
  • No mostrará aquellas personas que sean menores de 20 y que no sean de Badajoz.

VALORES NULOS.

También se puede preguntar si un campo es nulo o no de la siguiente forma:

LIMIT.

IN.

Se utiliza cuando queremos buscar varios valores a la vez. Es como una especia de condicional compuesta. Un ejemplo:

BETWEEN.

Se utiliza para buscar rango de valores. Un ejemplo:

LIKE.

Búsqueda por patrones o por aproximación. Un ejemplo:

Veamos algunas combinaciones:

  • ‘a%’. Que comience por la letra ‘a’.
  • ‘%a’. Que termine por la letra ‘a’.
  • ‘%or%’. Que contenga las letras ‘or’.
  • ‘_r%’. Que contenga la letra ‘r’ en la segunda posición.
  • ‘a_%_%’. Que empiece por la letra ‘a’ y contenga al menos 3 caracteres.
  • ‘a%o’. Que empiece por la letra ‘a’ y termine la por la letra ‘o’.

UNIÓN. Se utiliza para mostrar los datos de dos tablas distintas. Como requisitos deben tener ambas las mismas columnas y además ser de tipo de datos similar, deben estar siempre en el mismo orden. Un ejemplo:

  • Union por defecto no muestra los registros que están duplicados, si por alguna circunstancia necesitaramos que los mostrara usaríamos UNION ALL.

GROUP BY. Sirve para agrupar registros de forma que evita los duplicados. Esta instrucción normalmente se utiliza con funciones de agrupamiento, como son por ejemplo COUNT, MAX, MIN, SUM, AVG ..etc. Un ejemplo:

  • En este ejemplo cuenta los distintos paises que hay, sin duplicados, de forma que agrupa todas las ciudades duplicadas y muestra un solo registro por país.

FUNCIONES. Existen muchas funciones prediseñadas en SQL, aquí algunos ejemplos:

  • min(); Valor mínimo.
  • max(); Valor máximo.
  • count(); Cuenta los distintos valores.
  • avg(); Hace una media de los distintos valores.
  • sum(); Hace una suma.

HAVING. Esta instrucción sirve para usar condiciones en funciones agregadas, ya que con el Where no lo permite. Un ejemplo:

SUBCONSULTAS. Son, como su nombre bien dice, consultas dentro de otras consultas. Con esto podemos realizar consultas más complejas cuyos resultados dependen de otra consulta. Un ejemplo:

Tenemos una pequeña tabla de empleados donde vamos almacenar; id, nombre,edad,dirección y el salario. Queremos mostrar sólo aquellos empleados cuyo salario sea mayor de 4500:

Para realizar consultas podemos usar todo lo que hemos aprendido, incluso con los select, update y delete:

EXIST. Sirve para averiguar si existe algún registro en una subconsulta. Un ejemplo:

En este ejemplo muestro todos los campos de la tabla personas si existe algún pedido en la tabla pedidos de esa persona.

ANY/ALL. Esta instrucción se utiliza con la cláusula Where y Having. El operador ANY devuelva verdadero cuando se cumple la condición algún registro de la subconsulta. El operador ALL devuelve verdadero cuando todos los registros de la subconsulta cumple la condición. Un ejemplo:

En este ejemplo, da verdadero con sólo encontrarse con un registro que sea la cantidad mayor de 20.

Si lo hiciéramos con la cláusula ALL, la diferencia está en que sólo sería verdadero si todos los registros cumplieran con la condición, es decir, que fueran mayores de 20.

Continúa por Relaciones.

--

--

Ismael Royano Gómez
Enredando con la WEB.

Técnico Informático curioso, lector activo de las nuevas tecnologías, amante de las series de televisión y usuario del respetable mundo del enredo.