SQL
Para acceder y manipular la información en un sistema de gestión de base de datos (SGBD) se utiliza SQL.
SQL expone 4 tipo de operaciones:
    SELECT para listar registros de las tablas.
    INSERT para insertar registros.
    UPDATE para actualizar registros.
    DELETE para eliminar registros.
SQL no diferencia entre mayúsculas y minúsculas. SELECT es lo mismo que select;

Listando registros con SELECT

La sintaxis más simple del SELECT es la siguiente:
1
SELECT <columnas> FROM <tabla>;
Copied!
Si quieres mostrar todas las columnas de la tabla utiliza *. Por ejemplo:
1
SELECT * FROM rooms;
2
SELECT hotel_id, number FROM rooms;
Copied!
Puedes agregar condiciones con WHERE:
1
SELECT * FROM rooms WHERE hotel_id = 3;
Copied!

Insertando registros con INSERT

La sintaxis para insertar un registro es la siguiente:
1
INSERT INTO <tabla> (<columnas>) VALUES (<valores>);
Copied!
Por ejemplo:
1
INSERT INTO rooms (hotel_id, number, size, price) VALUES (2, 405, 45, 500);
Copied!

Actualizando registros con UPDATE

La sintaxis para actualizar registros es la siguiente:
1
UPDATE <tabla> SET <campo1>=<valor1>, <campo2>=<valor2> WHERE <condiciones>;
Copied!
Por ejemplo:
1
UPDATE rooms SET number='406' WHERE id = 1;
Copied!

Eliminando registros con DELETE

La sintaxis para eliminar registros es la siguiente:
1
DELETE FROM <tabla> WHERE <condiciones>;
Copied!
Por ejemplo:
1
DELETE FROM rooms;
2
DELETE FROM rooms WHERE size > 200;
Copied!

Opciones del SELECT

Las sentencias SELECT se pueden utilizar para hacer consultas complejas a la Base de Datos.

AND

Se utiliza cuando el WHERE tiene dos o más condiciones en donde todas se deben cumplir.
1
SELECT column1, column2, ...
2
FROM table_name
3
WHERE condition1 AND condition2 AND condition3 ...;
Copied!

OR

Se utiliza cuando el WHERE tiene dos o más condiciones en donde alguna se debe cumpliar:
1
SELECT column1, column2, ...
2
FROM table_name
3
WHERE condition1 OR condition2 OR condition3 ...;
Copied!
Puedes mezclar AND y OR pero debes utilizar paréntesis para agrupar donde sea necesario.

LIMIT

Se utiliza para limitar el número de registros que retorna la consulta.
1
SELECT column1, column2, ...
2
FROM table_name
3
LIMIT 10
Copied!

OFFSET

Se utiliza para saltar un número determinado de registros. Generalmente se utiliza en conjunto con LIMIT para paginar:
1
SELECT column1, column2, ...
2
FROM table_name
3
LIMIT 10
4
OFFSET 50
Copied!

ORDER BY

Se utiliza para ordenar los resultados de forma ascendente o descendente por uno o más campos de la consulta.
1
SELECT column1, column2, ...
2
FROM table_name
3
ORDER BY column1, column2, ... ASC;
Copied!
En vez de ASC (ascendente) puedes utilizar DESC (descendente).

GROUP BY

Se utiliza para agrupar registros por uno o más campos.
1
SELECT column1, column2, ...
2
FROM table_name
3
GROUP BY column1, column2, ...
Copied!
Generalmente se usa en conjunto a alguna de las siguiente funciones: COUNT, MAX, MIN, SUM,AVG`.

COUNT

Se utiliza para contar los registros de una consulta:
1
SELECT COUNT(column_name)
2
FROM table_name;
Copied!

MIN

Selecciona el menor valor de una columna:
1
SELECT MIN(column_name)
2
FROM table_name;
Copied!

MAX

Selecciona el mayor valor de una columna:
1
SELECT MAX(column_name)
2
FROM table_name;
Copied!

SUM

Se utiliza para sumar los valores de una columna:
1
SELECT SUM(column_name)
2
FROM table_name;
Copied!

AVG

Se utiliza para sacar el promedio de los valores de una columna:
1
SELECT AVG(column_name)
2
FROM table_name;
Copied!

JOINS

Se utilizan para unir información de dos o más tablas.
La sintaxis básica de un JOIN es la siguiente:
1
SELECT column1, column2, ...
2
FROM table1 JOIN table2 ON table1.column1 = table2.column2
Copied!
Existen diferentes tipos de JOIN:
    JOIN (o INNER JOIN): muestra los registros que tienen coincidencias en las dos tablas.
    LEFT JOIN: muestra todos los registros de la tabla izquierda, y los que coincidan a la derecha. Este es el JOIN más común.
    RIGHT JOIN: muestra todos los registros de la tabla derecha, y los que coincidan a la izquierda.
    FULL JOIN: muestra todos los registros de las dos tablas.
JOIN
LEFT JOIN
RIGHT JOIN
FULL JOIN
Last modified 3yr ago