Sesion Nº 09 Trabajando Con Mysql En Modo Consola.
-
Upload
edgar-cruz -
Category
Education
-
view
3.042 -
download
3
description
Transcript of Sesion Nº 09 Trabajando Con Mysql En Modo Consola.
Sesión 09:
Ing. Edgar A. Cruz Huaman
INSTITUTO SUPERIOR TECNOLÓGICO INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”“SAN PEDRO”
Trabajando con MySql en Modo Consola.
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
Presentación de Trabajo Práctico
• Librería Online en PHP.
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
Tabla Mascotas
Nombre Propietario Especie Sexo Nacimiento Fallecimento
Fluffy Arnoldo Gato f 2008-02-04
Mau Juan Gato m 2003-03-17
Buffy Arnoldo Perro f 2006-05-13
FanFan Benito Perro m 2007-08-27
Kaiser Diana Perro m 2006-08-31 1997-07-29
Chispa Omar Ave f 2006-09-11
Wicho Tomás Ave 2007-02-09
Skim Benito Serpiente m 2001-04-29
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
I. Recupera, Actualiza y Elimina Registros de una Tabla.
• Recuperar datos.– SELECT LaInformaciónQueDeseamos FROM
DeQueTabla WHERE CondiciónASatisfacer;
– mysql> SELECT * FROM mascotas;
• Actualizar los datos de una Tabla.– mysql> UPDATE mascotas SET nacimiento="1989-08-
31" WHERE nombre="Kaiser";
• Eliminar registros de una tabla– mysql> DELETE FROM mascotas;
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
II. SELECCIONANDO REGISTROS PARTICULARES
• mysql> SELECT * FROM mascotas WHERE nombre="Kaiser";
• mysql> SELECT * FROM mascotas WHERE nacimiento >= "2000-1-1";
• Ejercicios:– Seleccionar todos los campos de la tabla mascotas con la
condición de que la especie sea “perro” de sexo “masculino”.– Seleccionar los registros de mascotas considerando que las
especies sean: “perro” ó “serpiente”.– Seleccionar los registros de mascotas con la condición de que
la especie sea “perro”, ó la especie sea “gato” y a la ves su sexo sea “masculino”.
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
III. SELECCIONANDO COLUMNAS PARTICULARES
• mysql> SELECT nombre, nacimiento FROM mascotas;
• mysql> SELECT propietario FROM mascotas;
• Ejercicios:
– Seleccionar las distintas especies de la tabla mascotas.
– Seleccionar el nombre y especie de la tabla mascotas, cuya especie sea “ave” o “gato”.
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
IV. ORDENANDO REGISTROS
• mysql> SELECT nombre, nacimiento FROM mascotas ORDER BY nacimiento;
• mysql> SELECT nombre, nacimiento FROM mascotas ORDER BY nacimiento DESC;
• Ejercicio:
– Listar los registros, cuyos campos sean “nombre”, “sexo” y “nacimiento” de la tabla mascotas, los cuales seran ordenados por: “nombre” y “nacimiento” de manera descendente.
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
V. CALCULOS CON FECHAS (i)
• mysql> SELECT nombre, nacimiento, CURRENT_DATE,
-> (YEAR(CURRENT_DATE) - YEAR(nacimiento))
-> - (RIGHT(CURRENT_DATE,5) < RIGHT(nacimiento,5)) AS edad FROM mascotas;
• mysql> SELECT nombre, nacimiento, CURRENT_DATE,
-> (YEAR(CURRENT_DATE) - YEAR(nacimiento))
-> - (RIGHT(CURRENT_DATE,5) < RIGHT(nacimiento,5))
-> AS edad FROM mascotas ORDER BY edad;
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
VI. COINCIDENCIA DE PATRONES
• Para encontrar los nombres que comienzan con b :
– mysql> SELECT * FROM mascotas WHERE nombre LIKE "b%";
• Para encontrar los nombres que finalizan con fy :
– mysql> SELECT * FROM mascotas WHERE nombre LIKE "%fy";
• Para encontrar nombres que contienen una s :
– mysql> SELECT * FROM mascotas WHERE nombre LIKE "%s%";
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
VII. CONTEO DE FILAS
• # de mascotas:– mysql> SELECT COUNT(*) FROM
mascotas;
• # de mascotas por propietario:– mysql> SELECT propietario, COUNT(*)
FROM mascotas GROUP BY propietario;
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
VIII. USANDO MAS DE UNA TABLA
• Ejercicio:– El nombre de la mascota para saber a cuál de
ellas se refiere el evento.– Una fecha para saber cuando ocurrió el
evento.– Una descripción del evento.– Un campo que indique el tipo de evento, si
deseamos categorizarlos.
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
VIII. USANDO MAS DE UNA TABLA (ii)
• mysql> CREATE TABLE eventos(nombre varchar(20), fecha date, tipo varchar(15), descripcion varchar(255));
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
IX. Cargar los datos para la tabla eventos.
• nombre fecha tipo descripción• Fluffy 2001-05-15 camada 4 gatitos, 3 hembras, 1 macho
• Buffy 2001-06-23 camada 5 perritos, 2 hembras, 3 machos
• Buffy 2002-06-19 camada 2 perritos, 1 hembra, 1 macho
• Chispa 2000-03-21 veterinario Una pata lastimada
• FanFan 2001-08-27 cumpleaños Primera vez que se enfermo de la panza
• FanFan 2002-08-03 veterinario Dolor de panza
• Whicho 2001-02-09 cumpleaños Remodelación de casa
– P.D. Guardar el archivo eventos.txt
– mysql> LOAD DATA LOCAL INFILE "eventos.txt" INTO TABLE eventos;
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
X. Consulta.
• Desemos conocer la edad de cada mascota cuando tuvieron una camada.– mysql> SELECT mascotas.nombre, (TO_DAYS(fecha) -
TO_DAYS(nacimiento))/365 AS edad, descripcion FROM mascotas, eventos WHERE mascotas.nombre=eventos.nombre AND tipo='camada';
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
• Ejemplo:
– shell> mysql < archivo-batch
• En caso de Error:
– shell> mysql --force < archivo-batch
• Parametros de conexión desde la linea de comandos:
– shell> mysql -h localhost -u root -p < archivo-batch
• Extras:
– shell> mysql < archivo-batch | less
– shell> mysql < archivo-batch > salida-del-script.txt
XI. USANDO MYSQL EN MODO BATCH
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman
XII. USANDO MYSQL EN MODO BATCH (ii)
• Archivo: especies-distintas.sqlUSE zoologico;
SELECT DISTINCT especie FROM mascotas;
• Consulta.– mysql -t -h localhost -u root -p < especies-
distintas.sql
INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO”INSTITUTO SUPERIOR TECNOLÓGICO “SAN PEDRO” Ing. Edgar A. Cruz HuamanIng. Edgar A. Cruz Huaman