Está en la página 1de 17

SQL y MySQL

DDL - Definiendo la Estructura de la BDD

DDL - Definiendo la Estructura de la Base de Datos

CREATE DATABASE se utiliza para crear una nueva base de datos vacía.

DROP DATABASE se utiliza para eliminar completamente una base de datos existente.

CREATE TABLE se utiliza para crear una nueva tabla, donde la información se almacena realmente.

ALTER TABLE se utiliza para modificar una tabla ya existente.

DROP TABLE se utiliza para eliminar por completo una tabla existente.
DML - Manipulando los datos de las tablas

DML - Manipulando los datos de las tablas

SELECT se utiliza cuando quieres leer (o seleccionar) tus datos.

INSERT se utiliza cuando quieres añadir (o insertar) nuevos datos.

UPDATE se utiliza cuando quieres cambiar (o actualizar) datos existentes.

DELETE se utiliza cuando quieres eliminar (o borrar) datos existentes.

REPLACE se utiliza cuando quieres añadir o cambiar (o reemplazar) datos nuevos o ya existentes.

TRUNCATE se utiliza cuando quieres vaciar (o borrar) todos los datos de la plantilla.
Instalación de MySQL
Error común: No se pudo bloquear /var/lib/dpkg/ – open
(11: Recurso no disponible temporalmente)

sudo apt-get upgrade Solución: sudo fuser -vki /var/lib/dpkg/lock

sudo apt-get update Las opciones utilizadas en el comando sirven para:

sudo apt-get install mysql-server ● -v activa el modo verbose, para los que nos
gusta ver en todo momento lo que está
haciendo.
● -k mata el proceso que mantiene el fichero
ocupado.
● -i pide confirmación para matar al proceso.
Logueo en MySQL

mysql -u root -p

[solicita contraseña de root]

quit

[sale de mySQL]
Crear estructura de base de datos - DDL
CREATE DATABASE Tienda;

USE Tienda;

CREATE TABLE Productos(

idProducto varchar (5),


Indica cantidad
nombre varchar (30), maxima de digitos
enteros y decimales
precio decimal (5,2),

FechaInicioVenta date,

PRIMARY KEY (idProducto)

);
Introducir registros

INSERT INTO Productos VALUES

(‘001’, ‘Cereal Kellogs’, ‘37.50’, ‘2018-03-01’),

(‘002’, ‘Arroz’, ‘14.20’, ‘2017-05-06’),

(‘003’, ‘Pan de Barra’, ‘29.70’, ‘2018-01-15’),

(‘004’, ‘Cereal Nestle’, ‘42.30’, ‘2018-11-29’),

(‘005’, ‘Almendras’, ‘20’, ‘2016-07-22’);


Visualizar todos los productos registrados

SELECT * FROM Productos;


Consultas

Ver qué productos se llaman “Arroz”

SELECT * FROM Productos WHERE nombre = ‘Arroz’;


Like

Si queremos saber cuales comienzan con A:

SELECT * FROM Productos WHERE nombre LIKE ‘A%’;


Consultas

Si deseamos visualizar cuales tienen un precio superior a 30 pesos y no deseamos ver todos los campos
sino solo Nombre y Precio.

SELECT nombre, precio FROM Productos WHERE precio >30;


Where - Left

Si deseamos saber el promedio del precio de los cereales ()

SELECT avg(precio) FROM Productos WHERE LEFT (nombre,6) = ‘Cereal’;

Se pide sacar el promedio de precios de la tabla productos de los que las primeras 5 letras de izquierda
a derecha sean igual a ‘Cereal’.
Añadir un nuevo campo “Categoría” -
(DML)

ALTER TABLE Productos ADD categoria varchar(15);

Comprobamos que se agregó:

SELECT * FROM Productos;


Update - SET
Por defecto toda la nueva columna tiene valor “NULL”. Si deseamos cambiar el valor de toda la columna a “alimentos” usamos:

UPDATE Productos SET categoría = “Alimentos”;


Update - SET

Para ser más específicos podemos modificar su categoría a los productos que comienzan por la palabra
“Cereal” para que su categoría sea “Cereales”:

UPDATE Productos SET categoria = ‘Cereales’ WHERE LEFT (nombre,6) = ‘Cereal’;


Distinct

Para ver la lista de categorías sin que aparezcan duplicados usamos la sentencia DINSTINCT:

SELECT DISTINCT categoría FROM Productos;


Group by

Ver la cantidad de productos que tenemos en cada categoría usamos count y agrupar los datos con
GROUP BY:

SELECT categoria, count(*) FROM Productos GROUP BY categoria;

También podría gustarte