Para poder insertar un registro hacemos uso de la instrucción INSERT INTO, la cual tiene hasta 3 formas distintas de insertar registros.
Ejm
-- Mala práctica INSERT INTO usuarios VALUES(0, "Francisco","Paredes","info@sutilweb.eu","Dirección",51); -- Buena práctica INSERT INTO usuarios (nombre, apellidos, edad) VALUES ("Francisco","Paredes",51); -- Otra forma no muy utilizada INSERT INTO usuarios SET nombre = "Francisco", apellidos = "Paredes", edad = 51; -- Insertar varios registros INSERT INTO usuarios (nombre, apellidos, edad) VALUES ("Francisco","Paredes",51), ("Ines","Paredes",38), ("Eva","Paredes",24);
Leer datos
La instrucción para leer los datos es SELECT, que utiliza la siguiente sintaxis.
-- Leer todos los datos SELECT * FROM usuarios; -- Leer algunos datos SELECT nombre, apellidos, edad FROM usuarios; -- Número de registros SELECT COUNT(*) FROM usuarios; -- Claúsula WHERE SELECT * FROM usuarios WHERE nombre="Francisco"; SELECT * FROM usuarios WHERE nombre IN("Francisco","Inés","Eva"); -- Uso del operador LIKE -- Empiezan con la letra F SELECT * FROM usuarios WHERE nombre LIKE "F%"; -- Terminan con la letra o SELECT * FROM usuarios WHERE nombre LIKE "%o"; -- Empiezan con la letra F y terminan con la letra o SELECT * FROM usuarios WHERE nombre LIKE "F%o"; -- Uso del operador NOT LIKE -- Funciona al contrario que el operador LIKE SELECT * FROM usuarios NOT LIKE "F%"
La claúsula WHERE se suele utilizar con el comando SELECT
Operadores relacionales
Veamos ahora ejms de uso de los operadores relacionales con el comando WHERE.
Ejm
-- Registros mayores que 18 SELECT * FROM usuarios WHERE edad > 18; -- Registros mayores o iguales que 18 SELECT * FROM usuarios WHERE edad >= 18; -- Registros iguales a 18 SELECT * FROM usuarios WHERE edad = 18; -- Registros diferentes a 18 SELECT * FROM usuarios WHERE edad <> 18; SELECT * FROM usuarios WHERE edad != 18;
Operadores lógicos
Los típicos operadores lógicos son:
- OR
- AND
- NOT: Negar un valor diferente
Ejm
-- Operador de la negación SELECT * FROM usuarios WHERE NOT nombre = "Francisco"; -- Comparar más de un campo con el operador AND -- (ambas condiciones se deben cumplir) SELECT * FROM usuarios WHERE nombre = "Francisco" AND edad > 18; -- Mostrar uno u otro valor con OR -- (se debe cumplir una u otra condición) SELECT * FROM usuarios WHERE nombre = "Francisco" OR edad > 18;