0% encontró este documento útil (0 votos)
2 vistas31 páginas

Workbench

El documento detalla diversas actividades relacionadas con la creación y manipulación de bases de datos utilizando SQL. Incluye ejemplos de creación de tablas, inserción de datos, consultas y eliminación de registros en diferentes contextos como agendas, películas, medicamentos y autos. Cada actividad está estructurada con comandos SQL específicos y resultados esperados, mostrando la funcionalidad de las operaciones en bases de datos.

Cargado por

Roberto
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
2 vistas31 páginas

Workbench

El documento detalla diversas actividades relacionadas con la creación y manipulación de bases de datos utilizando SQL. Incluye ejemplos de creación de tablas, inserción de datos, consultas y eliminación de registros en diferentes contextos como agendas, películas, medicamentos y autos. Cada actividad está estructurada con comandos SQL específicos y resultados esperados, mostrando la funcionalidad de las operaciones en bases de datos.

Cargado por

Roberto
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Actividades Workbench

Juan Lloret

Actividad 3

Apartado A-
DROP TABLE IF EXISTS agenda;

CREATE TABLE agenda (


nombre VARCHAR(20),
domicilio VARCHAR(30),
telefono VARCHAR(11)
);

SHOW TABLES;

DESCRIBE agenda;

DROP TABLE IF EXISTS agenda;


Actividad 4

DROP TABLE IF EXISTS agenda;

CREATE TABLE agenda (


nombre VARCHAR(20),
domicilio VARCHAR(30),
telefono VARCHAR(11)
);

SHOW TABLES;

DESCRIBE agenda;

INSERT INTO agenda (nombre, domicilio, telefono) VALUES


('Alberto Mores', 'Colon 123', '4234567'),
('Juan Torres', 'Avellaneda 135', '4458787');

SELECT nombre, domicilio, telefono FROM agenda;

DROP TABLE IF EXISTS agenda;

DROP TABLE agenda;


Actividad 5

DROP TABLE IF EXISTS peliculas;

CREATE TABLE peliculas (


nombre VARCHAR(20),
actor VARCHAR(20),
duracion INTEGER,
cantidad INTEGER
);

DESCRIBE peliculas;

INSERT INTO peliculas (nombre, actor, duracion, cantidad)


VALUES
('Mision imposible', 'Tom Cruise', 120, 3),
('Mision imposible 2', 'Tom Cruise', 180, 2),
('Mujer bonita', 'Julia R.', 90, 3),
('Elsa y Fred', 'China Zorrilla', 90, 2);

SELECT * FROM peliculas;


Actividad 6
DROP TABLE IF EXISTS peliculas;

CREATE TABLE peliculas (


titulo VARCHAR(20),
actor VARCHAR(20),
duracion INTEGER,
cantidad INTEGER
);

DESCRIBE peliculas;

INSERT INTO peliculas (titulo, actor, duracion, cantidad)


VALUES
('Mision imposible', 'Tom Cruise', 120, 3),
('Mision imposible 2', 'Tom Cruise', 180, 2),
('Mujer bonita', 'Julia R.', 90, 3),
('Elsa y Fred', 'China Zorrilla', 90, 2);

SELECT titulo, actor FROM peliculas;

SELECT titulo, duracion FROM peliculas;

SELECT titulo, cantidad FROM peliculas;


Actividad 7

DROP TABLE IF EXISTS agenda;

CREATE TABLE agenda (


nombre VARCHAR(20),
domicilio VARCHAR(30),
telefono VARCHAR(11)
);

DESCRIBE agenda;

INSERT INTO agenda (nombre, domicilio, telefono)


VALUES
('Alberto Mores', 'Colon 123', '4234567'),
('Juan Torres', 'Avellaneda 135', '4458787'),
('Mariana Lopez', 'Urquiza 333', '4545454'),
('Fernando Lopez', 'Urquiza 333', '4545454');

SELECT * FROM agenda;

SELECT * FROM agenda WHERE nombre = 'Juan Torres';

SELECT * FROM agenda WHERE domicilio = 'Colon 123';

SELECT * FROM agenda WHERE telefono = '4545454';

DROP TABLE agenda;


Actividad 8

DROP TABLE IF EXISTS articulos;

CREATE TABLE articulos (


codigo INTEGER,
nombre VARCHAR(20),
descripcion VARCHAR(30),
precio FLOAT,
cantidad INTEGER
);

DESCRIBE articulos;

INSERT INTO articulos (codigo, nombre, descripcion, precio, cantidad)


VALUES
(1, 'impresora', 'Epson Stylus C45', 400.80, 20),
(2, 'impresora', 'Epson Stylus C85', 500, 30),
(3, 'monitor', 'Samsung 14', 800, 10),
(4, 'teclado', 'ingles Biswal', 100, 50),
(5, 'teclado', 'español Biswal', 90, 50);

SELECT * FROM articulos;

SELECT * FROM articulos WHERE nombre = 'impresora';

SELECT * FROM articulos WHERE precio >= 500;

SELECT nombre, descripcion, precio, cantidad


FROM articulos
WHERE cantidad < 30;

SELECT nombre, descripcion


FROM articulos
WHERE precio <> 100;
Actividad 9

DROP TABLE IF EXISTS agenda;

CREATE TABLE agenda (


apellido VARCHAR(30),
nombre VARCHAR(20),
domicilio VARCHAR(30),
telefono VARCHAR(11)
);

DESCRIBE agenda;

INSERT INTO agenda (apellido, nombre, domicilio, telefono)


VALUES
('Mores', 'Alberto', 'Colon 123', '4234567'),
('Torres', 'Juan', 'Avellaneda 135', '4458787'),
('Lopez', 'Mariana', 'Urquiza 333', '4545454'),
('Lopez', 'Jose', 'Urquiza 333', '4545454'),
('Peralta', 'Susana', 'Gral. Paz 1234', '4123456');

DELETE FROM agenda WHERE nombre = 'Juan';

DELETE FROM agenda WHERE telefono = '4545454';


Actividad 10

DROP TABLE IF EXISTS agenda;

CREATE TABLE agenda (


apellido VARCHAR(30),
nombre VARCHAR(20),
domicilio VARCHAR(30),
telefono VARCHAR(11)
);

DESCRIBE agenda;

INSERT INTO agenda (apellido, nombre, domicilio, telefono)


VALUES
('Mores', 'Alberto', 'Colon 123', '4234567'),
('Torres', 'Juan', 'Avellaneda 135', '4458787'),
('Lopez', 'Mariana', 'Urquiza 333', '4545454'),
('Lopez', 'Jose', 'Urquiza 333', '4545454'),
('Peralta', 'Susana', 'Gral. Paz 1234', '4123456');

UPDATE agenda SET nombre='Juan Jose' WHERE nombre='Juan';

UPDATE agenda SET telefono='4445566' WHERE telefono='4545454';

UPDATE agenda SET nombre='Juan Jose' WHERE nombre='Juan';


Actividad 11

DROP TABLE IF EXISTS libros;

CREATE TABLE libros (


codigo INTEGER,
titulo VARCHAR(20),
autor VARCHAR(30),
editorial VARCHAR(15),
PRIMARY KEY(codigo)
);

DESCRIBE libros;

INSERT INTO libros (codigo, titulo, autor, editorial)


VALUES
(1, 'El aleph', 'Borges', 'Planeta'),
(2, 'Martin Fierro', 'Jose Hernandez', 'Emece'),
(3, 'Aprenda PHP', 'Mario Molina', 'Emece'),
(4, 'Cervantes y el quijote', 'Borges', 'Paidos'),
(5, 'Matematica estas ahi', 'Paenza', 'Paidos');

SELECT * FROM libros;

INSERT INTO libros (codigo, titulo, autor, editorial)


VALUES
(6, 'Nuevo libro', 'Borges', 'OtraEditorial');

INSERT INTO libros (codigo, titulo, autor, editorial)


VALUES
(7, 'Martin Fierro 2', 'Otro Autor', 'Emece');

INSERT INTO libros (codigo, titulo, autor, editorial)


VALUES
(1, 'Otro libro', 'Autor Unico', 'Editorial Unica');
Actividad 12

DROP TABLE IF EXISTS medicamentos;

CREATE TABLE medicamentos (


codigo INTEGER AUTO_INCREMENT,
nombre VARCHAR(20),
laboratorio VARCHAR(20),
precio FLOAT,
cantidad INTEGER,
PRIMARY KEY (codigo)
);

DESCRIBE medicamentos;

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad)


VALUES
('Sertal', 'Roche', 5.2, 100),
('Buscapina', 'Roche', 4.10, 200),
('Amoxidal 500', 'Bayer', 15.60, 100);

SELECT codigo, nombre, laboratorio, precio, cantidad FROM medicamentos;

-- INSERT INTO medicamentos (codigo, nombre, laboratorio, precio, cantidad) VALUES (1,
'Sertal', 'Roche', 5.2, 100);

INSERT INTO medicamentos (codigo, nombre, laboratorio, precio, cantidad) VALUES (12,
'Paracetamol 500', 'Bago', 1.90, 200);

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad) VALUES ('Bayaspirina',


'Bayer', 2.10, 150);
Actividad 13
DROP TABLE IF EXISTS medicamentos;

CREATE TABLE medicamentos (


codigo INTEGER AUTO_INCREMENT,
nombre VARCHAR(20),
laboratorio VARCHAR(20),
precio FLOAT,
cantidad INTEGER,
PRIMARY KEY (codigo)
);

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad)


VALUES
('Sertal', 'Roche', 5.2, 100),
('Buscapina', 'Roche', 4.10, 200),
('Amoxidal 500', 'Bayer', 15.60, 100);

DELETE FROM medicamentos;

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad)


VALUES
('Sertal', 'Roche', 5.2, 100),
('Amoxidal 500', 'Bayer', 15.60, 100);

SELECT * FROM medicamentos;

TRUNCATE TABLE medicamentos;

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad)


VALUES
('Buscapina', 'Roche', 4.10, 200);

SELECT * FROM medicamentos;


Actividad 14
DROP TABLE IF EXISTS medicamentos;

CREATE TABLE medicamentos (


codigo INTEGER AUTO_INCREMENT,
nombre VARCHAR(20) NOT NULL,
laboratorio VARCHAR(20),
precio FLOAT,
cantidad INTEGER NOT NULL,
PRIMARY KEY (codigo)
);

DESCRIBE medicamentos;

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad)


VALUES
('Sertal gotas', 'Roche', 5.2, 100),
('Sertal compuesto', 'Roche', 7.1, 150),
('Buscapina', 'Roche', null, 200),
('Amoxidal 500', 'Bayer', 15.60, 0),
('Amoxidal jarabe', 'Bayer', 25, 120),
('Amoxinil', null, 25, 120),
('Bayaspirina', '', 0, 150);

SELECT * FROM medicamentos;

SELECT * FROM medicamentos WHERE laboratorio IS NULL;


SELECT * FROM medicamentos WHERE laboratorio = '';

SELECT * FROM medicamentos WHERE precio IS NULL;


SELECT * FROM medicamentos WHERE precio = 0;

-- INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad) VALUES (NULL,


'Bayer', 10.20, 100);

-- INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad) VALUES ('Benadryl


comprimidos', 'Bayer', 10.20, NULL);

INSERT INTO medicamentos (codigo, nombre, laboratorio, precio, cantidad) VALUES


(NULL, 'Benadryl comprimidos', 'Bayer', 10.20, NULL);

SELECT * FROM medicamentos WHERE precio <> 0;


SELECT * FROM medicamentos WHERE precio IS NOT NULL;

SELECT * FROM medicamentos WHERE laboratorio <> '';


SELECT * FROM medicamentos WHERE laboratorio IS NOT NULL;
Actividad 15

DROP TABLE IF EXISTS peliculas;

CREATE TABLE peliculas (


codigo INTEGER UNSIGNED AUTO_INCREMENT,
titulo VARCHAR(40) NOT NULL,
actor VARCHAR(20),
duracion INTEGER UNSIGNED,
PRIMARY KEY (codigo)
);

DESCRIBE peliculas;

Actividad 16

DROP TABLE IF EXISTS autos;

CREATE TABLE autos (


patente CHAR(6),
marca VARCHAR(20),
modelo CHAR(4),
precio FLOAT UNSIGNED,
PRIMARY KEY (patente)
);

INSERT INTO autos (patente, marca, modelo, precio)


VALUES
('ACD123', 'Fiat 128', '1970', 15000),
('ACG234', 'Renault 11', '1990', 40000),
('BCD333', 'Peugeot 505', '1990', 80000),
('GCD123', 'Renault Clio', '1990', 70000),
('BCC333', 'Renault Megane', '1998', 95000),
('BVF543', 'Fiat 128', '1975', 20000);

SELECT * FROM autos WHERE modelo = '1990';

SELECT * FROM autos WHERE precio > 50000;


Actividad 17

DROP TABLE IF EXISTS pedidos;

CREATE TABLE pedidos (


numero_pedido INTEGER UNSIGNED AUTO_INCREMENT,
nombre VARCHAR(20),
tipo VARCHAR(50),
precio DECIMAL(5, 2),
cantidad INTEGER UNSIGNED,
domicilio_cliente VARCHAR(100),
PRIMARY KEY (numero_pedido)
);

Actividad 18
DROP TABLE IF EXISTS autos;

CREATE TABLE autos (


marca VARCHAR(15),
modelo YEAR,
dueño VARCHAR(30),
precio DECIMAL(8, 2) UNSIGNED
);

INSERT INTO autos VALUES


('Fiat 128', 1970, 'Juan Lopez', 50000),
('Renault 11', 1990, 'Juan Lopez', 80000),
('Fiat 128', 1971, 'Ana Ferreyra', 51000),
('Peugeot 505', 1998, 'Luis Luque', 99000),
('Peugeot 505', 1997, 'Carola Perez', 85000);

SELECT * FROM autos


WHERE modelo < 1995;

SELECT marca, modelo FROM autos


WHERE modelo <> 1970;

-- INSERT INTO autos VALUES ('Peugeot 505', 1995, 'Carlos Lopez', 88000);
Actividad 19

DROP TABLE IF EXISTS autos;

CREATE TABLE autos (


marca VARCHAR(15),
modelo SMALLINT UNSIGNED,
dueño VARCHAR(30),
precio DECIMAL(8,2) UNSIGNED
);

INSERT INTO autos VALUES ('Fiat 128', 1970, 'Juan Lopez', 50000);
INSERT INTO autos VALUES ('Renault 11', 1990, 'Juan Lopez', 80000);
INSERT INTO autos VALUES ('Fiat 128', 1971, 'Ana Ferreyra', 51000);
INSERT INTO autos VALUES ('Peugeot 505', 1998, 'Luis Luque', 99000);
INSERT INTO autos VALUES ('Peugeot 505', 1997, 'Carola Perez', 85000);

SELECT * FROM autos


WHERE modelo < 1995;

SELECT marca, modelo FROM autos


WHERE modelo <> 1970;

INSERT INTO autos VALUES ('Peugeot 505', 1995, 'Carlos Lopez', 88000);
Actividad 20

DROP TABLE IF EXISTS peliculas;

CREATE TABLE peliculas (


codigo INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
titulo VARCHAR(30) NOT NULL,
actor VARCHAR(20),
duracion TINYINT UNSIGNED
);

INSERT INTO peliculas (titulo, actor, duracion) VALUES ('Mision imposible', 'Tom Cruise',
120);
INSERT INTO peliculas (codigo, duracion) VALUES (5, 90);
INSERT INTO peliculas (titulo, actor) VALUES ('Harry Potter y la piedra filosofal', 'Daniel
R.');
INSERT INTO peliculas (titulo, actor, duracion) VALUES ('Harry Potter y la piedra filosofal',
'Daniel R.', 120);

SELECT * FROM peliculas;


Actividad 21
DROP TABLE IF EXISTS empleados;

CREATE TABLE empleados (


documento CHAR(8) NOT NULL,
nombre VARCHAR(30) NOT NULL,
domicilio VARCHAR(30),
fechaingreso DATE NOT NULL,
fechanacimiento DATE,
PRIMARY KEY (documento)
);

INSERT INTO empleados (documento, fechaingreso, fechanacimiento)


VALUES ('22333444', '2005-10-20', NULL);

No se puede insertar un valor nulo en una columna definida como NOT NULL
INSERT INTO empleados (documento, fechaingreso, fechanacimiento)
VALUES ('22333444', NULL, '2005-10-10');

-- Paso 5:
Esto mostrará un mensaje de error ya que ambos campos están definidos como NOT NULL

INSERT INTO empleados (documento, nombre, domicilio, fechaingreso, fechanacimiento)


VALUES (12345678, 'Juan Perez', 'Calle 123', '2005-10-20', NULL);
Actividad 22

DROP TABLE IF EXISTS pedidos;

CREATE TABLE pedidos (


numero_pedido INT AUTO_INCREMENT PRIMARY KEY,
nombre VARCHAR(10) DEFAULT 'empanada',
tipo VARCHAR(30),
precio DECIMAL(5,2) DEFAULT '1.00',
cantidad INT DEFAULT 12,
domicilio VARCHAR(100)
);

INSERT INTO pedidos (nombre, tipo, precio, cantidad, domicilio)


VALUES ('piza', 'muzarela', '4.00', 3, 'Sarmiento 235');

INSERT INTO pedidos (tipo, precio, cantidad, domicilio)


VALUES ('arabe', '1.00', 24, 'Urquiza 296');

INSERT INTO pedidos (nombre, tipo, domicilio)


VALUES ('empanada', 'salteña', 'Colon 309');

INSERT INTO pedidos (tipo, domicilio)


VALUES ('arabe', 'San Martin 444');

INSERT INTO pedidos (nombre, tipo, precio, domicilio)


VALUES ('piza', 'especial', '4.00', 'Avellaneda 395');

SELECT * FROM pedidos;


Actividad 23

DROP TABLE IF EXISTS cuentas;

CREATE TABLE cuentas (


numero INT(8) ZEROFILL AUTO_INCREMENT,
documento CHAR(8) NOT NULL,
nombre VARCHAR(30),
saldo DECIMAL(9,2),
PRIMARY KEY (numero)
);

DESCRIBE cuentas;

INSERT INTO cuentas (numero, documento, nombre, saldo)


VALUES (1234, '22333444', 'Juan Perez', 2000.60),
(2566, '23333444', 'Maria Pereyra', 5050),
(5987, '24333444', 'Marcos Torres', 200),
(14434, '25333444', 'Ana Juarez', 8000.60);

SELECT * FROM cuentas;

INSERT INTO cuentas (numero, documento, nombre, saldo)


VALUES (-1234, '27333444', 'Luis Duarte', 2800);
Actividad 24

DROP TABLE IF EXISTS empleados;

CREATE TABLE empleados (


nombre VARCHAR(50),
documento CHAR(8) PRIMARY KEY,
sexo CHAR(1),
domicilio VARCHAR(100),
sueldobasico DECIMAL(6,2),
hijos INT,
FOREIGN KEY (documento)
REFERENCES empleados(documento)
);

INSERT INTO empleados (nombre, documento, sexo, domicilio, sueldobasico, hijos)


VALUES ('Juan Perez', '22333444', 'm', 'Calle 123', 300, 1),
('Ana Acosta', '21333444', 'f', 'Avenida XYZ', 400, 2),
('Alberto Lopez', '24333444', 'm', 'Calle ABC', 600, 0),
('Carlos Sanchez', '30333444', 'm', 'Avenida 456', 550, 3),
('Mariana Torres', '23444555', 'f', 'Calle 789', 600, 1),
('Marcos Garcia', '23664555', 'm', 'Avenida DEF', 1500, 2);

SELECT nombre, sueldobasico, sueldobasico + sueldobasico*0.1 AS 'Sueldo con aumento'


FROM empleados;

SELECT nombre, sueldobasico, hijos, (200*hijos) AS 'Salario Familiar', sueldobasico +


(200*hijos) AS 'Sueldo Final'
FROM empleados;
Actividad 25
DROP TABLE IF EXISTS empleados;

CREATE TABLE empleados (


documento CHAR(8) NOT NULL,
nombre VARCHAR(30) NOT NULL,
sexo CHAR(1),
domicilio VARCHAR(30),
fechaIngreso DATE,
fechaNacimiento DATE,
sueldoBasico DECIMAL(5,2) UNSIGNED,
PRIMARY KEY (documento)
);

INSERT INTO empleados (documento, nombre, sexo, domicilio, fechaIngreso,


fechaNacimiento, sueldoBasico)
VALUES
('22333111', 'Juan Perez', 'm', 'Colon 123', '1990-02-01', '1970-05-10', 550),
('25444444', 'Susana Morales', 'f', 'Avellaneda 345', '1995-04-01', '1975-11-06', 650),
('20111222', 'Hector Pereyra', 'm', 'Caseros 987', '1995-04-01', '1965-03-25', 510),
('30000222', 'Luis Luque', 'm', 'Urquiza 456', '1980-09-01', '1980-03-29', 700),
('20555444', 'Maria Laura Torres', 'f', 'San Martin 1122', '2000-05-15', '1965-12-22', 700),
('30000234', 'Alberto Soto', 'm', 'Peru 232', '2003-08-15', '1989-10-10', 420),
('20125478', 'Ana Gomez', 'f', 'Sarmiento 975', '2004-06-14', '1976-09-21', 350),
('24154269', 'Ofelia Garcia', 'f', 'Triunvirato 628', '2004-09-23', '1974-05-12', 390),
('306154269', 'Federico Gonzalez', 'm', 'Peru 390', '1996-08-15', '1985-05-01', 580);

SELECT nombre, fechaNacimiento


FROM empleados
WHERE MONTH(fechaNacimiento) = 5;

SELECT nombre, fechaIngreso, sueldoBasico, (sueldoBasico + sueldoBasico*0.01) AS


'Sueldo Incrementado'
FROM empleados
WHERE MONTH(fechaIngreso) = 8;

UPDATE empleados
SET sueldoBasico = sueldoBasico + sueldoBasico * 0.01
WHERE MONTH(fechaIngreso) = 8;

SELECT nombre, sueldoBasico


FROM empleados
WHERE MONTH(fechaIngreso) = 8;

SELECT nombre, fechaIngreso, YEAR(CURRENT_DATE) - YEAR(fechaIngreso) AS 'Años


de servicio'
FROM empleados
WHERE MONTH(fechaIngreso) = 8;
Actividad 26
DROP TABLE IF EXISTS medicamentos;

CREATE TABLE medicamentos (


codigo INT UNSIGNED AUTO_INCREMENT,
nombre VARCHAR(20),
laboratorio VARCHAR(20),
precio DECIMAL(5,2),
cantidad INT UNSIGNED,
PRIMARY KEY (codigo)
);

DESCRIBE medicamentos;

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad)


VALUES
('Sertal', 'Roche', 5.20, 100),
('Buscapina', 'Roche', 4.10, 200),
('Amoxidal 500', 'Bayer', 15.60, 100),
('Paracetamol 500', 'Bago', 1.90, 200),
('Bayaspirina', 'Bayer', 2.10, 150),
('Amoxidal jarabe', 'Bayer', 5.10, 250);

SELECT * FROM medicamentos


ORDER BY precio DESC;

SELECT * FROM medicamentos


ORDER BY cantidad;

SELECT * FROM medicamentos


ORDER BY laboratorio DESC, cantidad ASC;
Actividad 27
DROP TABLE IF EXISTS medicamentos;

CREATE TABLE medicamentos (


codigo INT UNSIGNED AUTO_INCREMENT,
nombre VARCHAR(20),
laboratorio VARCHAR(20),
precio DECIMAL(5,2),
cantidad INT UNSIGNED,
PRIMARY KEY (codigo)
);

DESCRIBE medicamentos;

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad)


VALUES
('Sertal', 'Roche', 5.2, 100),
('Buscapina', 'Roche', 4.10, 200),
('Amoxidal 500', 'Bayer', 15.60, 100),
('Paracetamol 500', 'Bago', 1.90, 200),
('Bayaspirina', 'Bayer', 2.10, 150),
('Amoxidal jarabe', 'Bayer', 5.10, 250);

SELECT * FROM medicamentos


ORDER BY precio DESC;

SELECT * FROM medicamentos


ORDER BY cantidad;

SELECT * FROM medicamentos


ORDER BY laboratorio DESC, cantidad ASC;
Actividad 28
DROP TABLE IF EXISTS medicamentos;

CREATE TABLE medicamentos (


codigo INT UNSIGNED AUTO_INCREMENT,
nombre VARCHAR(20),
laboratorio VARCHAR(20),
precio DECIMAL(5,2),
cantidad INT UNSIGNED,
PRIMARY KEY (codigo)
);

DESCRIBE medicamentos;

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad)


VALUES
('Sertal', 'Roche', 5.2, 100),
('Buscapina', 'Roche', 4.10, 200),
('Amoxidal 500', 'Bayer', 15.60, 100),
('Paracetamol 500', 'Bago', 1.90, 200),
('Bayaspirina', 'Bayer', 2.10, 150),
('Amoxidal jarabe', 'Bayer', 5.10, 250);

SELECT codigo, nombre


FROM medicamentos
WHERE laboratorio='Roche' AND precio<5;

SELECT * FROM medicamentos


WHERE laboratorio='Roche' OR precio<5;

SELECT * FROM medicamentos


WHERE NOT laboratorio='Bayer';

SELECT * FROM medicamentos


WHERE NOT laboratorio='Bayer' AND cantidad=100;

SELECT * FROM medicamentos


WHERE laboratorio='Bayer' AND NOT cantidad=100;

DELETE FROM medicamentos


WHERE laboratorio='Bayer' AND precio>10;

UPDATE medicamentos
SET cantidad=200
WHERE laboratorio='Roche' AND precio>5;

DELETE FROM medicamentos WHERE laboratorio='Bayer' OR precio<3;


Actividad 29
DROP TABLE IF EXISTS medicamentos;

CREATE TABLE medicamentos (


codigo INT UNSIGNED AUTO_INCREMENT,
nombre VARCHAR(20),
laboratorio VARCHAR(20),
precio DECIMAL(5,2) UNSIGNED,
cantidad INT UNSIGNED,
PRIMARY KEY (codigo)
);

DESCRIBE medicamentos;

INSERT INTO medicamentos (nombre, laboratorio, precio, cantidad)


VALUES
('Sertal', 'Roche', 5.2, 100),
('Buscapina', 'Roche', 4.10, 200),
('Amoxidal 500', 'Bayer', 15.60, 100),
('Paracetamol 500', 'Bago', 1.90, 200),
('Bayaspirina', 'Bayer', 2.10, 150),
('Amoxidal jarabe', 'Bayer', 5.10, 250);

SELECT nombre, precio FROM medicamentos


WHERE precio BETWEEN 5 AND 15;

SELECT * FROM medicamentos


WHERE laboratorio IN ('Bayer', 'Bago');

DELETE FROM medicamentos


WHERE cantidad BETWEEN 100 AND 200;
Actividad 30
DROP TABLE IF EXISTS medicamentos;

CREATE TABLE medicamentos (


codigo INT UNSIGNED AUTO_INCREMENT,
nombre VARCHAR(20) NOT NULL,
laboratorio VARCHAR(20),
precio DECIMAL(6,2) UNSIGNED,
cantidad INT UNSIGNED,
PRIMARY KEY (codigo)
);

DESCRIBE medicamentos;

INSERT INTO medicamentos (nombre, laboratorio, precio)


VALUES
('Sertal gotas', 'Roche', 5.2),
('Buscapina', 'Roche', 4.10),
('Amoxidal 500', 'Bayer', 15.60),
('Paracetamol 500', 'Bago', 1.90),
('Bayaspirina', 'Bayer', 2.10),
('Amoxidal jarabe', 'Bayer', 5.10),
('Sertal compuesto', 'Bayer', 5.10),
('Paracetamol 1000', 'Bago', 2.90),
('Amoxinil', 'Roche', 17.80);

SELECT codigo, nombre, laboratorio, precio


FROM medicamentos
WHERE nombre LIKE 'Amox%';

SELECT codigo, nombre, laboratorio, precio


FROM medicamentos
WHERE nombre LIKE 'Paracetamol%' AND precio < 2;

SELECT codigo, nombre, laboratorio, precio


FROM medicamentos
WHERE precio LIKE '%.10';

SELECT codigo, nombre, laboratorio, precio


FROM medicamentos
WHERE nombre NOT LIKE '%compuesto%';

DELETE FROM medicamentos


WHERE laboratorio LIKE '%y%';

UPDATE medicamentos
SET precio = 5
WHERE nombre LIKE 'Paracetamol%' AND precio > 2;
Actividad 31
DROP TABLE IF EXISTS agenda;

CREATE TABLE agenda (


apellido VARCHAR(30),
nombre VARCHAR(20) NOT NULL,
domicilio VARCHAR(30),
telefono VARCHAR(11),
mail VARCHAR(30)
);

INSERT INTO agenda VALUES


('Perez', 'Juan', 'Sarmiento 345', '4334455', 'juancito@[Link]'),
('Garcia', 'Ana', 'Urquiza 367', '4226677', 'anamariagarcia@[Link]'),
('Lopez', 'Juan', 'Avellaneda 900', NULL, 'juancitoLopez@[Link]'),
('Juarez', 'Mariana', 'Sucre 123', '0525657687', 'marianaJuarez2@[Link]'),
('Molinari', 'Lucia', 'Peru 1254', '4590987', 'molinarilucia@[Link]'),
('Ferreyra', 'Patricia', 'Colon 1534', '4585858', NULL),
('Perez', 'Susana', 'San Martin 333', NULL, NULL),
('Perez', 'Luis', 'Urquiza 444', '0354545256', 'perezluisalberto@[Link]'),
('Lopez', 'Maria', 'Salta 314', NULL, 'lopezmariayo@[Link]');

SELECT * FROM agenda


WHERE mail LIKE '%gmail%';

SELECT * FROM agenda


WHERE nombre NOT REGEXP '[zg]';

SELECT * FROM agenda


WHERE apellido REGEXP '[v-z]';

SELECT * FROM agenda


WHERE apellido LIKE '%ez';

SELECT apellido, nombre, domicilio FROM agenda


WHERE apellido LIKE '%i%i%';

SELECT * FROM agenda


WHERE LENGTH(telefono) = 7;

SELECT nombre, mail FROM agenda


WHERE LENGTH(mail) >= 20;
Actividad 32
DROP TABLE IF EXISTS visitantes;

CREATE TABLE visitantes (


nombre VARCHAR(30),
edad TINYINT UNSIGNED,
sexo CHAR(1),
domicilio VARCHAR(30),
ciudad VARCHAR(20),
telefono VARCHAR(11),
montocompra DECIMAL(6,2) UNSIGNED
);

INSERT INTO visitantes VALUES


('Susana Molina', 28, 'f', 'Colon 123', 'Cordoba', NULL, 45.50),
('Marcela Mercado', 36, 'f', 'Avellaneda 345', 'Cordoba', '4545454', 0),
('Alberto Garcia', 35, 'm', 'Gral. Paz 123', 'Alta Gracia', '03547123456', 25),
('Teresa Garcia', 33, 'f', 'Gral. Paz 123', 'Alta Gracia', '03547123456', 0),
('Roberto Perez', 45, 'm', 'Urquiza 335', 'Cordoba', '4123456', 33.20),
('Marina Torres', 22, 'f', 'Colon 222', 'Villa Dolores', '03544112233', 25),
('Julieta Gomez', 24, 'f', 'San Martin 333', 'Alta Gracia', '03547121212', 53.50),
('Roxana Lopez', 20, 'f', 'Triunvirato 345', 'Alta Gracia', NULL, 0),
('Liliana Garcia', 50, 'f', 'Paso 999', 'Cordoba', '4588778', 48),
('Juan Torres', 43, 'm', 'Sarmiento 876', 'Cordoba', '4988778', 15.30);

SELECT COUNT(*) FROM visitantes;

SELECT COUNT(telefono) FROM visitantes;

SELECT COUNT(*) FROM visitantes


WHERE sexo = 'm';

SELECT COUNT(*) FROM visitantes


WHERE sexo = 'f' AND edad > 25;

SELECT COUNT(*) FROM visitantes


WHERE ciudad <> 'Cordoba';

SELECT COUNT(*) FROM visitantes


WHERE montocompra <> 0;

SELECT COUNT(*) FROM visitantes


WHERE montocompra = 0;

También podría gustarte