sql >> Base de Datos >  >> RDS >> Database

Tutorial de SQL:solución integral para aprender SQL

En el mercado actual, donde se generan alrededor de 2,5 quintillones de bytes de datos todos los días, es muy importante entender cómo manejar una cantidad tan enorme de datos. Bueno, aquí es donde entra en escena el lenguaje de consulta estructurado o SQL. Por lo tanto, en este artículo sobre SQL Tutorial, analizaré los siguientes conceptos importantes, que son imprescindibles para convertirse en administrador de base de datos.

  • Introducción a SQL
    1. ¿Qué es SQL?
    2. Aplicaciones de SQL
    3. Tipos de datos SQL
    4. Operadores SQL
  • Principales comandos SQL
    1. CREAR
    2. SOLTAR
    3. ALTERAR
    4. TRUNCADO
    5. EXPLICAR
    6. INSERTAR EN
    7. ACTUALIZAR
    8. SELECCIONAR
    9. ME GUSTA
    10. CONCESIÓN
  • Claves en la base de datos
  • Restricciones de SQL
  • Normalización
  • Uniones SQL
  • Vistas

Tutorial de SQL:Introducción a SQL

¿Qué es SQL?

Desarrollado por Donald D. Chamberlin en la década de 1970, el lenguaje de consulta estructurado o más comúnmente conocido como SQL es uno de los lenguajes más populares utilizados para manipular, almacenar, actualizar y recuperar datos de una base de datos relacional. SQL consta de varios comandos segregados en 4 categorías, es decir, DDL, DML, DCL y TCL para jugar con datos en bases de datos. Además, las bases de datos relacionales como las bases de datos MySQL, Oracle, MS SQL Server, Sybase, etc. utilizan SQL para modificar los datos.

Aplicaciones de SQL

Las aplicaciones de SQL son las siguientes:

  • Con SQL, puede crear y eliminar tablas y bases de datos.
  • Permite a los usuarios definir y manipular datos en bases de datos.
  • SQL permite a los usuarios acceder, modificar y describir datos en RDBMS.
  • Con SQL, puede establecer permisos en tablas, vistas y procedimientos y otorgar permisos específicos a diferentes usuarios.
  • SQL le permite integrarse en otros lenguajes usando bibliotecas y módulos SQL.

Ahora que conoce los conceptos básicos de SQL, a continuación en este tutorial de SQL, comprendamos cuáles son los diferentes tipos de datos de SQL.

Tipos de datos SQL

Los tipos de datos SQL se dividen en las siguientes categorías:

  • Numérico – Los tipos de datos numéricos permiten enteros con y sin signo. Se pueden dividir en tipos de datos exactos y aproximados, donde exacto permite los números enteros en forma de números enteros y aproximado permite números enteros flotantes.
  • Cadena de caracteres – Este tipo de datos permite caracteres de longitud fija y variable. Este tipo de datos también se puede categorizar en caracteres Unicode, que permiten longitudes fijas y variables de caracteres Unicode.
  • Binario – Los tipos de datos binarios permiten que los datos se almacenen en formato de valores binarios, de longitud fija y variable.
  • Fecha y hora – Este tipo de datos permite que los datos se almacenen en diferentes formatos de fecha y hora.
  • Otro – Esta sección de tipos de datos tiene tipos de datos como tabla, XML, cursor, identificador único y sql_variant.

Si desea obtener una comprensión detallada de los diferentes tipos de datos SQL, puede consultar la guía detallada sobre tipos de datos SQL.

Operadores SQL

Los operadores son las construcciones que pueden manipular los valores de los operandos. Considere la expresión 4 + 6 =10, aquí 4 y 6 son operandos y + se llama operador.

SQL admite los siguientes tipos de operadores:

  • Operadores aritméticos
  • Operadores bit a bit
  • Operadores de comparación
  • Operadores compuestos
  • Operadores lógicos

Para conocer los diferentes operadores soportados por SQL, de manera detallada, puede hacer clic aquí. Entonces, ahora que sabe qué es SQL y sus conceptos básicos, comprendamos los principales comandos o declaraciones en SQL.

Tutorial SQL:Principales Comandos SQL

SQL consta de varios comandos o declaraciones para agregar, modificar, eliminar o actualizar datos en la base de datos. En este artículo sobre el tutorial de SQL, vamos a discutir las siguientes declaraciones:

    1. CREAR
    2. SOLTAR
    3. ALTERAR
    4. TRUNCADO
    5. EXPLICAR
    6. INSERTAR EN
    7. ACTUALIZAR
    8. SELECCIONAR
    9. ME GUSTA
    10. CONCESIÓN

En este tutorial de SQL, voy a considerar la siguiente base de datos como ejemplo, para mostrarle cómo escribir consultas usando estos comandos SQL.

ID de cliente Nombre del cliente Número de teléfono Dirección Ciudad País
1 Simón 9876543210 Calle Donald 52 Hyderabad India
2 Akasha 9955449922 Queens Road 74 Bombay India
3 Patricio 9955888220 Tablero de seda 82 Delhi India
4 Igual 9647974327 IG Carretera 19 Hyderabad India
5 Juan 9674325689 Bloque de carreteras de la brigada 9 Bangalore India

CREAR

La declaración CREATE se usa para crear una tabla, vista o base de datos de la siguiente manera:

CREAR BASE DE DATOS

Usado para crear una base de datos.

Sintaxis

CREATE DATABASE DatabaseName;

Ejemplo

 
CREATE DATABASE CustomerInfo; 

CREAR TABLA

Esta declaración se usa para crear una tabla.

Sintaxis

CREATE TABLE TableName (
Column1 data type,
Column2 data type,
....

ColumnN data type
);

Ejemplo

 
CREATE TABLE Customers
(
CustomerID int,
CustomerName varchar(255),
PhoneNumber int,
Address varchar(255),
City varchar(255),
Country varchar(255)
);

CREAR VISTA

Usado para crear una vista.

Sintaxis

CREATE VIEW OR REPLACE ViewName AS
SELECT Column1, Column2, ..., ColumnN
FROM TableName
WHERE Condition;

Ejemplo

CREATE VIEW OR REPLACE HydCustomers AS
SELECT CustomerName, PhoneNumber
FROM Customers
WHERE City = "Hyderabad";

Nota: Antes de comenzar a crear una tabla e ingresar valores, debe usar la base de datos, usando la instrucción USE como [USE CustomersInfo; ]

SOLTAR

La declaración DROP se usa para descartar una tabla, vista o base de datos existente.

BOTAR BASE DE DATOS

Usado para descartar la base de datos. Cuando utilice esta declaración, se perderá la información completa presente en la base de datos.

Sintaxis

DROP DATABASE DatabaseName;

Ejemplo

DROP DATABASE CustomerInfo;

TABLA DE SALIDA

Usado para dejar caer la tabla. Cuando utilice esta declaración, se perderá la información completa presente en la tabla.

Sintaxis

DROP TABLE TableName;

Ejemplo

DROP TABLE Customers;

SOLTAR VISTA

Usado para soltar la vista. Cuando utilice esta declaración, se perderá la información completa presente en la vista.

Sintaxis

DROP VIEW ViewName;

Ejemplo

DROP VIEW HydCustomers;

CAMBIAR

La declaración ALTER se usa para agregar, eliminar o modificar restricciones o columnas en una tabla existente.

ALTERNAR TABLA

La declaración ALTER se usa para eliminar, agregar y modificar columnas en una tabla existente. Puede usar ALTER TABLE con ADD/DROP column para agregar o eliminar una columna en la tabla. Aparte de esto, también puede ALTERAR/MODIFICAR una columna específica.

Sintaxis

ALTER TABLE TableName
ADD ColumnName Data Type;
ALTER TABLE TableName
DROP COLUMN ColumnName;

ALTER TABLE TableName
ALTER COLUMN ColumnName Data Type;

Ejemplo

--ADD Column Gender:
 ALTER TABLE Customers
ADD  Gender varchar(255);
 
--DROP Column Gender: 
ALTER TABLE Customers
DROP COLUMN Gender ;

--Add a column DOB and change the data type from Date to Year.
 
ALTER TABLE DOB
ADD DOB date;
 
ALTER TABLE DOB
ALTER DOB year;

TRUNCADO

La declaración TRUNCATE se usa para eliminar la información presente en la tabla, pero no la tabla en sí. Entonces, una vez que use este comando, su información se perderá, pero la tabla no seguirá presente en la base de datos.

Sintaxis

TRUNCATE TABLE TableName;

Ejemplo

TRUNCATE Table Customers;

EXPLICAR

Las declaraciones EXPLAIN y DESCRIBE son sinónimos que se utilizan para obtener un plan de ejecución de consultas y la información sobre la estructura de una tabla, respectivamente. Esta declaración se puede usar con las declaraciones INSERT, DELETE, SELECT, UPDATE y REPLACE.

Sintaxis

--Syntax for DESCRIBE
DESCRIBE TableName;

--Sample syntax for EXPLAIN
EXPLAIN ANALYZE SELECT * FROM TableName1 JOIN TableName2 ON (TableName1.ColumnName1 = TableName2.ColumnName2);

Ejemplo

DESCRIBE Customers;

EXPLAIN ANALYZE SELECT * FROM Customers1 JOIN Orders ON (Customers.CustomerID = Orders.CustomerID);

INSERTAR EN

La declaración INSERT INTO se usa para insertar nuevos registros en una tabla.

Sintaxis

INSERT INTO TableName (Column1, Column2, Column3, ...,ColumnN)
VALUES (value1, value2, value3, ...);

--If you do not want to mention the column names then use the below syntax, but the order of values entered should match the column data types :

INSERT INTO TableName
VALUES (Value1, Value2, Value3, ...);

Ejemplo

INSERT INTO Customers(CustomerID, CustomerName, PhoneNumber, Address, City, Country)
VALUES ('06', 'Sanjana', '9654323491', 'Oxford Street House No 10', 'Bengaluru', 'India');
 
INSERT INTO Customers
VALUES ('07', 'Himani','9858018368', 'Nice Road 42', 'Kolkata', 'India');

ACTUALIZAR

La declaración UPDATE se usa para modificar los registros ya presentes en la tabla.

Sintaxis

UPDATE TableName
SET Column1 = Value1, Column2 = Value2, ...
WHERE Condition;

Ejemplo

UPDATE Customers
SET CustomerName = 'Aisha', City= 'Kolkata'
WHERE EmployeeID = 2;

SELECCIONAR

La declaración SELECT se usa para seleccionar datos de una base de datos y almacenarlos en una tabla de resultados, llamada conjunto de resultados .

Sintaxis

SELECT Column1, Column2, ...ColumN
FROM TableName;

--(*) is used to select all from the table
SELECT * FROM table_name;

-- To select the number of records to return use:
SELECT TOP 3 * FROM TableName;

Ejemplo

SELECT CustomerID, CustomerName
FROM Customers;
 
--(*) is used to select all from the table
SELECT * FROM Customers;
 
-- To select the number of records to return use:
SELECT TOP 3 * FROM Customers;

Aparte de esto, puede usar la palabra clave SELECT con DISTINCT, ORDER BY, GROUP BY, HAVING Clause e INTO.

ME GUSTA

Este operador se usa con una cláusula WHERE para buscar un patrón específico en una columna de una tabla. Hay principalmente dos comodines que se utilizan junto con el operador LIKE:

  • % – Coincide con 0 o más caracteres.
  • _ – Coincide exactamente con un carácter.

Sintaxis

SELECT ColumnName(s)
FROM TableName
WHERE ColumnName LIKE pattern;

Ejemplo

SELECT * FROM Customers
WHERE CustomerName LIKE 'S%';

CONCESIÓN

El comando GRANT se usa para proporcionar privilegios o acceso a la base de datos y sus objetos a los usuarios.

Sintaxis

GRANT PrivilegeName
ON ObjectName
TO {UserName |PUBLIC |RoleName}
[WITH GRANT OPTION];

dónde,

  • Nombre de privilegio – Los privilegios/derechos/acceso otorgado al usuario.
  • Nombre del objeto – Nombre de un objeto de base de datos como TABLE/VIEW/STORED PROC.
  • Nombre de usuario – Nombre del usuario al que se otorga el acceso/derechos/privilegios.
  • PÚBLICO – Para otorgar derechos de acceso a todos los usuarios.
  • Nombre de la función – El nombre de un conjunto de privilegios agrupados.
  • CON OPCIÓN DE CONCESIÓN – Dar acceso al usuario para otorgar derechos a otros usuarios.

Ejemplo

-- To grant SELECT permission to Customers table to admin
GRANT SELECT ON Customers TO admin;

Ahora que conoce los principales comandos SQL, comprendamos cuáles son los diferentes tipos de claves que se utilizan en la base de datos. Bueno, este concepto lo ayudará a comprender cómo se relaciona cada tabla con la otra tabla en un sistema de administración de bases de datos relacionales.

Tutorial SQL:Claves

Los siguientes son los 7 tipos de claves, que se pueden considerar en una base de datos:

  • Clave de candidato: Un conjunto de atributos que pueden identificar de forma única una tabla se puede denominar clave candidata. Una tabla puede tener más de una clave candidata y, de las claves candidatas elegidas, se puede elegir una clave como clave principal.
  • Supertecla – El conjunto de atributos que pueden identificar de forma única una tupla se conoce como Super Key. Entonces, una clave candidata, una clave principal y una clave única es una superclave, pero viceversa no es cierto.
  • Clave principal: Un conjunto de atributos que se utilizan para identificar de forma única cada tupla también es una clave principal.
  • Clave alternativa: Las claves alternativas son las claves candidatas, que no se eligen como clave principal.
  • Clave única: La clave única es similar a la clave principal, pero permite un valor NULO en la columna.
  • Clave foránea – Un atributo que solo puede tomar los valores presentes como los valores de algún otro atributo, es la clave externa del atributo al que se refiere.
  • Clave compuesta – Una clave compuesta es una combinación de dos o más columnas que identifican cada tupla de manera única.

Espero que haya entendido los diferentes tipos de claves en la base de datos, a continuación, en este artículo sobre el tutorial de SQL, hablemos de las restricciones en la base de datos. Bueno, las restricciones de SQL se usan para aumentar la precisión y la confiabilidad de los datos que ingresan a la base de datos a través de una tabla.

Tutorial SQL: Restricciones

Las restricciones de SQL aseguran que no haya ninguna violación en términos de una transacción de datos, si se encuentran, la acción finalizará. El uso principal de las siguientes restricciones es limitar el tipo de datos que pueden incluirse en una tabla.

  • NO NULO – Esta restricción se utiliza para garantizar que una columna no pueda almacenar un valor NULL.
  • ÚNICO – La restricción ÚNICA se usa para garantizar que todos los valores ingresados ​​en una columna o tabla sean únicos.
  • COMPROBAR – Esta restricción se usa para asegurarse de que una columna o varias columnas satisfagan una condición específica.
  • POR DEFECTO – La restricción DEFAULT se utiliza para establecer un valor predeterminado para una columna si no se especifica ningún valor.
  • ÍNDICE – Esta restricción se usa para indexar en la tabla, a través de la cual puede crear y recuperar datos de la base de datos muy rápidamente.

Si desea conocer en profundidad las siguientes restricciones con sintaxis y ejemplos, puede consultar otros artículos sobre SQL. Entonces, ahora que conoce las claves y las restricciones en la base de datos, a continuación en este artículo sobre el tutorial de SQL, echemos un vistazo a un concepto interesante de Normalización.

Tutorial SQL:Normalización

La normalización es el proceso de organización de datos para evitar la duplicación y la redundancia. Hay muchos niveles sucesivos de normalización y esos se llaman formas normales . Además, cada forma normal consecutiva depende de la anterior. Las siguientes son las formas normales presentes:

Para comprender las formas normales anteriores, consideremos la siguiente tabla:

Al observar la tabla anterior, puede distinguir claramente la redundancia y la duplicación de datos. Entonces, normalicemos esta tabla. Para comenzar a normalizar las bases de datos, siempre debe comenzar con la forma normal más baja, es decir, 1NF y luego ir a las formas normales más altas eventualmente.

Ahora, veamos cómo podemos realizar la primera forma normal, para la tabla anterior.

Primera forma normal (1FN)

Para asegurarse de que la base de datos debe estar en 1NF , cada celda de la tabla debe tener un solo valor. Básicamente, todos los registros deben ser únicos . La tabla anterior se normalizará en 1NF como se muestra a continuación:

Si observa en la tabla anterior, todos los registros son únicos. Pero, sin embargo, hay mucha redundancia y duplicación de datos. Entonces, para evitar eso, normalicemos la base de datos a la segunda forma normal.

Segunda forma normal (2NF)

Para asegurarse de que la base de datos debe estar en 2NF , la base de datos debe ser 1NF y también debe tener una clave principal de una sola columna . La tabla anterior se normalizará en 2NF como se muestra a continuación:

Si observa las tablas anteriores, cada tabla tiene una clave principal de una sola columna. Pero hay mucha redundancia de datos y duplicación de algunas columnas. Entonces, para evitar eso, normalicemos la base de datos a la tercera forma normal.

Tercera Forma Normal (3NF)

Para asegurarse de que la base de datos debe estar en 3NF , la base de datos debe estar en 2NF y no debe tener ninguna dependencia funcional transitiva . Las tablas anteriores se normalizarán en 3FN de la siguiente manera:

Si observa las tablas anteriores, la base de datos no tiene ninguna dependencia transitiva. Entonces, después de este paso, no tenemos que normalizar más nuestra base de datos. Pero, si ve alguna anomalía presente o más de una sola clave candidata, entonces puede continuar con la siguiente forma normal más alta, es decir, BCNF.

Forma normal de Boyce-Codd (BCNF)

Para asegurarse de que la base de datos debe estar en BCNF, la base de datos debe estar presente en 3NF y las tablas deben dividirse aún más, para asegurarse de que solo esté presente una clave candidata.

Con esto, llegamos al final de la normalización. Ahora, a continuación en este tutorial de SQL, analicemos un concepto importante en SQL, que son las uniones.

Tutorial SQL:Uniones

Las uniones se usan para combinar filas de dos o más tablas, en función de una columna relacionada entre esas tablas y también en algunas condiciones. Existen principalmente cuatro tipos de uniones:

  • UNIÓN INTERNA: Esta unión devuelve aquellos registros que tienen valores coincidentes en ambas tablas.
  • UNIÓN COMPLETA: FULL JOIN devuelve todos aquellos registros que tienen una coincidencia en la tabla izquierda o derecha.
  • UNIÓN IZQUIERDA: Esta combinación devuelve registros de la tabla de la izquierda y también aquellos registros que cumplen la condición de la tabla de la derecha.
  • UNIÓN DERECHA: Esta combinación devuelve registros de la tabla de la derecha y también aquellos registros que cumplen la condición de la tabla de la izquierda.

Entonces, esta fue una breve descripción de JOINS, pero si desea una descripción detallada de JOINS con un ejemplo detallado, puede consultar mi artículo sobre SQL JOINS. A continuación, en este tutorial de SQL, analicemos el último concepto de este artículo, es decir, Vistas.

Tutorial SQL:Vistas

Una vista en SQL es una sola tabla, que se deriva de otras tablas. Una vista contiene filas y columnas similares a una tabla real y tiene campos de una o más tablas. Consulte la siguiente imagen:

Para comprender cómo crear y descartar una vista, puede consultar las declaraciones CREATE y DROP mencionadas anteriormente. Con eso, llegamos al final de este artículo sobre el tutorial de SQL. Espero que hayas encontrado este artículo informativo. Además, si se está preparando para entrevistas de administrador de base de datos y está buscando una lista completa de preguntas, puede consultar nuestro artículo sobre Preguntas de entrevista de SQL.

Si desea obtener más información sobre MySQL y conocer esta base de datos relacional de código abierto, consulte nuestra Capacitación de certificación de DBA de MySQL que incluye capacitación en vivo dirigida por un instructor y -Experiencia proyecto de vida. Esta capacitación lo ayudará a comprender MySQL en profundidad y lo ayudará a dominar el tema.

¿Tiene alguna pregunta para nosotros? Menciónelo en la sección de comentarios de este tutorial de SQL y nos pondremos en contacto con usted.