Guía de comandos básicos de SQL
Guía en desarrollo. Última edición: 11/02/2020
SQL (Structured Query Language) es un lenguaje de programación que sirve para extraer información de bases de datos. A continuación encontrarás algunos de los comandos más habituales.
Ejemplo del uso que le puedes llegar a dar a nivel SEO (Tweet de Lino Uruñuela) 👇

Consultas de datos con SQL
Selecciona todas las filas y columnas de una tabla
SELECT * FROM nombre_tabla;
Selecciona una columna en concreto
SELECT nombre_columna FROM nombre_tabla;
Para seleccionar múltiples columnas:
SELECT nombre_columna, nombre_columna2, nombre_columna3... FROM nombre_tabla;
Uso de «ALIAS»
Los alias permiten seleccionar columnas que tengan, por ejemplo, nombre con mayúsculas o minúsculas, o diferentes nombres directamente.
SELECT nombre_columna AS Nombre_Columna FROM nombre_tabla;
--O también de esta forma
SELECT nombre_columna Nombre_Columna FROM nombre_tabla;
Selección del dato que te interesa
SELECT nombre_columna FROM nombre_tabla WHERE data_nombre = "Ejemplo";
Operadores | Ejemplo |
= | keyword = «comprar coche»; |
!= | keyword != » comprar coche «; |
<> | keyword <> » comprar coche «; es igual que != |
< | posicion_media < 10; |
> | posicion_media > 10; |
<= | posicion_media <= 10; |
>= | posicion_media >= 10; |
AND | keyword = «comprar coche» AND keyword = «comprar moto» ; |
OR | keyword = «comprar coche» OR keyword = «comprar moto» ; |
Buscar en un set de valores determinado
SELECT nombre_columna FROM nombre_tabla WHERE data_id IN (1, 2, 3, 4, ..., 100);
--O por exclusión con NOT IN
SELECT nombre_columna FROM nombre_tabla WHERE data_id NOT IN (1, 2, 3, 4, ..., 100);
Buscar en un rango de valores
SELECT nombre_columna FROM nombre_tabla WHERE data_id BETWEEN 1 AND 100;
Buscar dato que contiene unos determinados caracteres
--si queremos cualquier dato que contenga ejemplo
SELECT nombre_columna FROM nombre_tabla WHERE data_nombre LIKE "%ejemplo%";
--si queremos que empiece por ejemplo
SELECT nombre_columna FROM nombre_tabla WHERE data_nombre LIKE "ejemplo%";
--si queremos que termine por ejemplo
SELECT nombre_columna FROM nombre_tabla WHERE data_nombre LIKE "%ejemplo";
Selección de celdas vacías o datos perdidos
SELECT nombre_columna FROM nombre_tabla WHERE data_nombre IS NULL;
--O celdas con datos
SELECT nombre_columna FROM nombre_tabla WHERE data_nombre IS NOT NULL;
Modificando datos con SQL
Añadir filas y datos
-- Poniendo los datos en el orden de las columnas
INSERT INTO nombre_tabla VALUES (1, "ejemplo", 23-02-2017);
--O con los datos desordenados
INSERT INTO nombre_tabla (columna_texto, columna_fecha, columna_id) VALUES ("ejemplo", 23-02-2017, 1);
Añadir múltiples filas y datos
INSERT INTO nombre_tabla (columna_texto, columna_fecha, columna_id, ...)
VALUES
("ejemplo", "23-02-2017", 1, ...);
("ejemplo2", "13-03-2017", 2, ...);
("ejemplo92", "31-10-2019", 92, ...);
Actualización de todos los datos
UPDATE nombre_tabla SET columna_texto = "nuevo_ejemplo";
-- O varias filas
UPDATE nombre_tabla SET columna_texto = "nuevo_ejemplo", columna_id = 3;
Actualización de datos específicos
UPDATE nombre_tabla SET columna_texto = "otro_ejemplo" WHERE columna_id = 5;
-- O varias filas
UPDATE nombre_tabla SET columna_texto = "otro_ejemplo", columna_fecha = "01-01-2020" WHERE columna_id = 5;
Eliminar todos los datos de una tabla, WARNING!!!
DELETE FROM nombre_tabla
Eliminar datos específicos de una tabla, WARNING!!!
DELETE FROM nombre_tabla WHERE columna_id = 5;
Transacciones
BEGIN TRANSACTION;
-- O simplemente
BEGIN;
-- Para guardar las instrucciones después de "BEGIN"
COMMIT;
-- Para resetear las instrucciones antes de "BEGIN"
ROLLBACK;
To be continued…