Qué es SQL

¿Qué es SQL?

Seguramente habrás visto varias veces las siglas SQL entre los requisitos en ofertas de trabajo, normalmente suele aparecer junto a otros palabros tales como MySQL, postgres o MariaDB, pero ¿qué es realmente?.

SQL (pronunciado frecuentemente como sequel en inglés) son las siglas de Structured Query Language, y se utiliza para administrar y extraer datos de bases de datos relacionales. Seguramente te habrás quedado igual que al principio. ¿Qué demonios es una base de datos relacional? ¿Qué es una base de datos sin más?

Una base de datos es…

Vayamos por partes. Una base de datos es un sistema que permite almacenar datos de forma permanente y luego acceder a ellos de forma eficiente. Generalmente suelen estar centralizadas, de modo que varios usuarios o aplicaciones pueden acceder a ella de forma remota, lo que les permite compartir datos.

Bases de datos relacionales

Las bases de datos relacionales son un tipo de base de datos que sigue una serie de reglas para garantizar la estructura y la integridad de los datos. Quizás las características más importantes de éstas tecnologías son las siguientes:

Almacenan los datos en tablas normalizadas: una tabla en una base de datos relacional es como una hoja de excel, nos da una serie de filas y columnas en las que podemos introducir datos. Sin embargo, éstas tablas son mucho más rígidas que las hojas de excel. En excel podemos organizar la información manualmente como nos dé la real gana.

En ésta foto vemos una especie de tabla con datos en la esquina inferior izquierda, arriba de ella hay otros datos y al lado un gráfico. Aunque organizar los datos de ésta forma puede ser útil para que nosotros veamos la información a las máquinas no les gusta nada, ya que encontrarán muchos espacios en blanco y cosas que no son datos (el gráfico).

Una tabla normalizada no permite que estructuremos la información como queramos, sino que impone una estructura sobre ella. Cada columna de la tabla es una variable y cada fila es un registro. Cada registro puede representar los datos de un usuario, de un coche que tenemos asegurado, de un producto en un almacén, de un libro que hay en una biblioteca…

La tabla tiene una serie de variables o campos, y nosotros lo único que podemos hacer es añadir filas (o registros en la jerga) a la tabla. 

Al crear un registro, éste tendrá todas las variables que haya en la tabla, y si queremos cambiar las variables para una fila, tendremos que cambiar la tabla entera.

Como podéis ver, en éste caso todos los datos están completos y todas las filas tienen las mismas variables.

A simple vista puede parecer malo que la base de datos sea tan inflexible, pero hace que tratar los datos sea mucho más fácil y reduce errores.

Permiten establecer relaciones entre los datos: imaginemos que estamos construyendo una base de datos para una aseguradora. La aseguradora tiene clientes, de modo que estaría bien tener una tabla con los datos de cada cliente. Además, cada cliente puede tener una o varias pólizas (o incluso quizás ninguna). 

Si intentamos almacenar toda ésta información en una sola tabla, nos encontraremos con que tendremos información duplicada ya que por cada póliza tendremos que repetir los datos del cliente. 

Por ello, lo suyo sería tener otra tabla en donde aparezcan los datos de cada póliza. Así cada fila en ésta tabla contiene los datos de una póliza y el único dato que hay del cliente es su código de cliente, por ejemplo. De ésta forma, hemos establecido una relación entre las tablas, ya que gracias al código de cliente, podemos vincular la información de la póliza a los datos del cliente, sin tener que duplicar ninguna información (a parte del código claro).

Pero entonces ¿Qué es SQL y para qué sirve?

Ahora que sabemos lo que es una base de datos relacional podemos entender mejor lo que es SQL. SQL es el lenguaje que nos permite extraer información de éste tipo de bases de datos, así como crear las tablas, definir las variables que hay en ellas, crear relaciones y todo lo necesario para gestionar la base de datos.

Por ejemplo, con SQL podemos encontrar fácilmente todas las pólizas que tiene un cliente, o cuántos clientes tenemos en cada provincia.

Y ¿Qué es MySQL?

¿Y qué hay de MySQL, postgres y compañía?. En realidad, SQL es un estándar que define más o menos como se deben hacer las cosas, no es ningún programa que puedas instalar.

MySQL, en cambio, sí es un programa que te permite crear las bases de datos, y postgres otro diferente. Ambos comparten muchos elementos definidos en el estándar, pero cada uno añade sus cosas y puede gestionar los datos de forma algo diferente.

Como enseñamos SQL en OXYGEN Academy

Ya te habrás dado cuenta que OXYGEN Academy es un espacio de crecimiento profesional para personas que están interesadas en el mundo digital. Por eso estás leyendo este post, porque creamos continuamente contenido gratuito para que andes tus primeros pasos en el mundo de la programación y resuelvas tus primeras dudas. Sin embargo, también hemos creado unas formaciones totalmente novedosas donde, entre otras muchas cosas, también está SQL. Por un lado, si tu pasión está en la programación tanto de back como de front y quieres integrar en SQL en tus proyectos, tanto el Bootcamp Full Stack como el Training son formaciones pensadas en aprender a programar y cuentan en su programa con esta tecnología. Finalmente, el Curso de Data Analytics está más enfocado a la recolección y análisis de datos con este lenguaje, entre otros.

Autor

Manuel Torres

Selección de talento en OXYGEN

Valoración post
Ir arriba

¿Te gustaría dedicarte profesionalmente a programar?

Realiza un sencillo test y descubre si tienes las habilidades que requieren las empresas para contratarte.

Abrir Chat
1
¿Necesitas ayuda?
OXYGEN Academy
¡Hola! 👋 ¿Necesitas más información?