Logo Studenta

practica_2_usuarios - Mauricio axel 20

¡Este material tiene más páginas!

Vista previa del material en texto

Horario: 12:00 – 13:00
Practica 2
TALLER DE BASE DE DATOS
EQUIPO:
Cárdenas Bahena Tomás Rafael Mauricio Axel López Anselmo Samuel Gómez García
Introducción
El alumno deberá realizar la siguiente práctica, en la cual, utilizara los conocimientos que adquirió en el desarrollo del tema 2.
· Crear una tabla Usuarios.
o Agregar 30 registros como mínimo y un máximo de 60.
· Utilizar para el campo marca, las marcas: SONY, SAMSUNG, NOKIA, BLACKBERRY, MOTOROLA, LG.
· Y para el campo de compañía: UNEFON, AT&T, AXTEL, NEXTEL, TELCEL, IUSACELL
· Realizar los siguientes Queries:
· Listar solo los nombres de los usuarios registrados de manera ascendente
· Realizar una sumatoria máxima de saldo de los usuarios que sean mujeres.
· Listar	nombre	y	teléfono	de	los	usuarios	con	teléfono	NOKIA,
BLACKBERRY o SONY
o Realizar un coteo total de los usuarios sin saldo o inactivo.
· Listar los usuarios con los privilegios de nivel 1, 2 o 3.
o Listar los números de teléfono con saldo menor o igual a 300
· Calcular la suma de los saldos de los usuarios de la compañía telefónica NEXTEL
· Contar el número de usuarios por compañía telefónica de manera descendente
· Contar el número de usuarios por nivel
· Listar el login de los usuarios con nivel 2
· Mostrar el email de los usuarios que usan Gmail
· Listar nombre y teléfono de los usuarios con teléfono LG, SAMSUNG o MOTOROLA
· Listar el login y teléfono de los usuarios con compañía telefónica IUSACELL
· Realizar las siguientes vistas:
· Listar el login de los usuarios con nivel 3 de manera descendente
· Mostrar el email de los usuarios que usan Hotmail
· Listar el login y teléfono de los usuarios con compañía telefónica IUSACELL
o UNEFON de manera ascendente.
· Listar los nombres de los usuarios sin saldo o inactivos
· Calcular la suma de los saldos de los usuarios de la compañía telefónica UNEFON
P á g i n a | 10
Desarrollo
Se crea una base de datos Telefonia.
CREATE DATABASE telefonia; 
Se crea la tabla Usuarios;
CREATE TABLE tblUsuarios ( 
idx INT PRIMARY KEY AUTO_INCREMENT, 
usuario VARCHAR(20), nombre VARCHAR(20), sexo VARCHAR(1), nivel TINYINT, 
email VARCHAR(50), telefono VARCHAR(20), marca VARCHAR(20), compañia VARCHAR(20), saldo FLOAT, 
activo BOOLEAN 
); 
Agregamos los registros:
insert into usuarios values (2, "Oli", "Oliver", "M", 1, "oliver@hotmail.com", "7445699693", "Sony", "Unefon", 100, 1),
-> (3, "Anton", "Antonio", "M", 1, "antonio@hotmail.com", "7425698963", "Sony", "Unefon", 120, 1),
-> (4, "Andy", "Andres", "M", 1, "andres@hotmail.com", "7425555963", "Sony", "Unefon", 200, 1),
-> (5, "Juanito", "Juan", "M", 1, "juan@hotmail.com", "7425598763", "Sony", "Unefon", 50, 1);
insert into usuarios values (6, "Feli", "Felicia", "F", 2, "feli@gmail.com", "7445563963", "Samsung", "AT&T", 15, 0),
-> (7, "Bele", "Belen", "F", 2, "bele@gmail.com", "7444563963", "Samsung", "AT&T", 150, 0),
-> (8, "Cele", "Celeste", "F", 2, "cele@gmail.com", "7463663963", "Samsung", "AT&T", 300, 0),
-> (9, "Marce", "Marcelo", "M", 2, "marce@gmail.com", "7469993963", "Samsung", "AT&T", 200, 0),
-> (10, "Anto", "Antonia", "F", 2, "anto@gmail.com", "7469999783", "Samsung", "AT&T", 120, 0);
insert into usuarios values (11, "Gas", "Gaspar", "M", 3, "gas@gmail.com", "7445563999", "Nokia", "Axtel", 30, 1),
-> (12, "Juli", "Julian", "M", 3, "juli@gmail.com", "7445566479", "Nokia", "Axtel", 40, 1),
-> (13, "Tom", "Tomas", "M", 3, "tom@gmail.com", "7445566987", "Nokia", "Axtel", 60, 1),
-> (14, "Marco", "Marcos", "M", 3, "marcos@gmail.com", "7445566986", "Nokia", "Axtel", 80, 1),
-> (15, "Ger", "Gerardo", "M", 3, "gerardo@gmail.com", "7445566369", "Nokia", "Axtel", 70, 1);
insert into usuarios values (16, "Zule", "Zulema", "F", 1, "zule@gmail.com", "7445563124", "Blackberry", "Nextel", 40, 0),
-> (17, "Mari", "Maria", "F", 1, "mari@gmail.com", "7445563324", "Blackberry", "Nextel", 90, 0),
-> (18, "Mar", "Maru", "F", 1, "maru@gmail.com", "7478941245", "Blackberry", "Nextel", 100, 0),
-> (19, "Juani", "Juana", "F", 1, "juana@gmail.com", "7478941025", "Blackberry", "Nextel", 120, 0),
-> (20, "Lia", "Noelia", "F", 1, "noelia@gmail.com", "7478941033", "Blackberry", "Nextel", 160, 0);
insert into usuarios values (21, "Fina", "Josefina", "F", 2, "fina@gmail.com", "7445563646", "Motorola", "Telcel", 100, 1),
-> (22, "Lui", "Luis", "M", 2, "luis@hotmail.com", "7445564454", "Motorola", "Telcel", 190, 1),
-> (23, "Fran", "Francisco", "M", 2, "fran@hotmail.com", "7445564669", "Motorola", "Telcel", 130, 1),
-> (24, "Pe", "Pedro", "M", 2, "pedro@hotmail.com", "7445568787", "Motorola", "Telcel", 90, 1),
-> (25, "Rober", "Roberto", "M", 2, "rober@hotmail.com", "7445568021", "Motorola", "Telcel", 80, 1);
insert into usuarios values (26, "Carlo", "Carlos", "F", 3, "carlos@hotmail.com", "7445563930", "Iusacell", "LG", 120, 1),
-> (27, "Javi", "Javier", "M", 3, "javi@hotmail.com", "7445563211", "Iusacell", "LG", 120, 0),
-> (28, "Edu", "Eduardo", "M", 3, "edu@hotmail.com", "7445563132", "Iusacell", "LG", 100, 0),
-> (29, "Rulo", "Raul", "M", 3, "raul@hotmail.com", "7445564147", "Iusacell", "LG", 140, 0),
-> (30, "Ric", "Ricardo", "M", 3, "ricard@hotmail.com", "7402468147", "Iusacell", "LG", 200, 0);
+	+	+-	+	+-	+-	+	+-	-+	-+	+	+
| idx | usuario | nombre | sexo | nivel | email	| telefono | marca	| compañia | saldo | activo |
+	+	+-	+	+-	+-	+	+-	-+	-+	+	+
| 1 | Dino | Daniel | M |	1 | daniel@hotmail.com | 7445698963 | Sony	| Unefon | 150 |	1 |
| 2 | Oli	| Oliver | M |	1 | oliver@hotmail.com | 7445699693 | Sony	| Unefon | 100 |	1 |
| 3 | Anton | Antonio | M |	1 | antonio@hotmail.com | 7425698963 | Sony	| Unefon | 120 |	1 |
| 4 | Andy | Andres | M |	1 | andres@hotmail.com | 7425555963 | Sony	| Unefon | 200 |	1 |
| 5 | Juanito | Juan	| M |	1 | juan@hotmail.com | 7425598763 | Sony	| Unefon | 50 |	1 |
| 6 | Feli | Felicia | F |	2 | feli@gmail.com	| 7445563963 | Samsung | AT&T	| 15 |	0 |
| 7 | Bele | Belen	| F |	2 | bele@gmail.com	| 7444563963 | Samsung | AT&T	| 150 |	0 |
| 8 | Cele | Celeste | F |	2 | cele@gmail.com	| 7463663963 | Samsung | AT&T	| 300 |	0 |
| 9 | Marce | Marcelo | M |	2 | marce@gmail.com	| 7469993963 | Samsung | AT&T	| 200 |	0 |
| 10 | Anto | Antonia | F |	2 | anto@gmail.com	| 7469999783 | Samsung | AT&T	| 120 |	0 |
| 11 | Gas	| Gaspar | M |	3 | gas@gmail.com	| 7445563999 | Nokia	| Axtel | 30 |	1 |
| 12 | Juli | Julian | M |	3 | juli@gmail.com	| 7445566479 | Nokia	| Axtel | 40 |	1 |
| 13 | Tom	| Tomas	| M |	3 | tom@gmail.com	| 7445566987 | Nokia	| Axtel | 60 |	1 |
| 14 | Marco | Marcos | M |	3 | marcos@gmail.com | 7445566986 | Nokia	| Axtel | 80 |	1 |
| 15 | Ger	| Gerardo | M |	3 | gerardo@gmail.com | 7445566369 | Nokia	| Axtel | 70 |	1 |
| 16 | Zule | Zulema | F |	1 | zule@gmail.com	| 7445563124 | Blackberry | Nextel | 40 |	0 |
| 17 | Mari | Maria	| F |	1 | mari@gmail.com	| 7445563324 | Blackberry | Nextel | 90 |	0 |
| 18 | Mar	| Maru	| F |	1 | maru@gmail.com	| 7478941245 | Blackberry | Nextel | 100 |	0 |
| 19 | Juani | Juana	| F |	1 | juana@gmail.com	| 7478941025 | Blackberry | Nextel | 120 |	0 |
| 20 | Lia	| Noelia | F |	1 | noelia@gmail.com | 7478941033 | Blackberry | Nextel | 160 |	0 |
| 21 | Fina | Josefina | F |	2 | fina@gmail.com	| 7445563646 | Motorola | Telcel | 100 |	1 |
| 22 | Lui	| Luis	| M |	2 | luis@hotmail.com | 7445564454 | Motorola | Telcel | 190 |	1 |
| 23 | Fran | Francisco | M |	2 | fran@hotmail.com | 7445564669 | Motorola | Telcel | 130 |	1 |
| 24 | Pe	| Pedro	| M |	2 | pedro@hotmail.com | 7445568787 | Motorola | Telcel | 90 |	1 |
| 25 | Rober | Roberto | M |	2 | rober@hotmail.com | 7445568021 | Motorola | Telcel | 80 |	1 |
| 26 | Carlo | Carlos | F |	3 | carlos@hotmail.com | 7445563930 | Iusacell | LG	| 120 |	1 || 27 | Javi | Javier | M |	3 | javi@hotmail.com | 7445563211 | Iusacell | LG	| 120 |	0 |
| 28 | Edu	| Eduardo | M |	3 | edu@hotmail.com	| 7445563132 | Iusacell | LG	| 100 |	0 |
| 29 | Rulo | Raul	| M |	3 | raul@hotmail.com | 7445564147 | Iusacell | LG	| 140 |	0 |
| 30 | Ric	| Ricardo | M |	3 | ricard@hotmail.com | 7402468147 | Iusacell | LG	| 200 |	0 |
+	+	+-	+	+-	+-	+	+-	-+	-+	+	+
o Listar solo los nombres de los usuarios registrados de manera ascendente
select nombre from usuarios order by nombre ASC;
+	+
| nombre |
+	+
| Andres |
| Antonia |
| Antonio |
| Belen	|
| Carlos |
| Celeste |
| Daniel |
| Eduardo |
| Felicia |
| Francisco |
| Gaspar |
| Gerardo |
| Javier |
| Josefina |
| Juan	|
| Juana	|
| Julian |
| Luis	|
| Marcelo |
| Marcos |
| Maria	|
| Maru	|
| Noelia |
| Oliver |
| Pedro	|
| Raul	|
| Ricardo |
| Roberto |
| Tomas	|
| Zulema |
+	+
· Realizar una sumatoria máxima de saldo de los usuarios que sean mujeres.
select sum(saldo) saldo,sexo from usuarios where sexo="F";
· Listar nombre y teléfono de los usuarios con teléfono NOKIA, BLACKBERRY o SONY
select nombre,telefono,marca from usuarios where (marca="Nokia") OR (marca="Sony") OR (marca="Blackberry");
o Realizar un conteo total de los usuarios sin saldo o inactivo.
select marca,count(*) from usuarios where activo= 0 group by marca;
· Listar los usuarios con los privilegios de nivel 1, 2 o 3.
select usuario,nombre,nivel from usuarios where nivel=1;
o Listar los números de teléfono con saldo menor o igual a 100 (no tenemos de 300)
select nombre,telefono,compañia,saldo from usuarios where saldo <=100;
· Calcular la suma de los saldos de los usuarios de la compañía telefónica NEXTEL
select compañia, sum(saldo) from usuarios where compañia="Nextel";
· Contar el número de usuarios por compañía telefónica de manera descendente
select compañia, count(*)usuario from usuarios group by compañia order by count(*) DESC;
· Contar el número de usuarios por nivel
select nivel, count(*) from usuarios group by nivel;
· Listar el login de los usuarios con nivel 2
select usuario,nivel from usuarios where nivel=2;
· Mostrar el email de los usuarios que usan Gmail
select usuario,email from usuarios where email like "%_gmail%" order by usuario ASC;
o Listar nombre y teléfono de los usuarios con teléfono LG, SAMSUNG o MOTOROLA
select nombre,telefono,marca from usuarios where marca="motorola";
· Listar el login y teléfono de los usuarios con compañía telefónica IUSACELL
select usuario,marca,compañia from usuarios where marca="iusacell";
· Realizar las siguientes vistas:
· Listar el login de los usuarios con nivel 3 de manera descendente
CREATE VIEW vista_nivel AS select usuario,nivel from usuarios where nivel=3 order by usuario ASC;
· Mostrar el email de los usuarios que usan Hotmail
create view vista_email AS select usuario,email from usuarios where email like "%_gmail%" order by usuario ASC;
· Listar el login y teléfono de los usuarios con compañía telefónica IUSACELL o UNEFON de manera ascendente.
create view vista_compañia AS select usuarios.compañia,usuario,telefono from usuarios where (compañia="Unefon") OR (compañia="LG");
· Listar los nombres de los usuarios sin saldo o inactivos
create view vista_saldo AS select usuario, usuarios.saldo,activo from usuarios where (saldo=0) OR (activo=0);
· Calcular la suma de los saldos de los usuarios de la compañía telefónica UNEFON
create	view	vista_saldo_comp	AS	select	compañia,sum(saldo)	from	usuarios	where compañia="unefon";
Conclusión
A lo largo de esta práctica tuvimos que realizar(crear) una base de datos que llevara consigo la tabla usuarios en la que agregamos 30 registros utilizando los diferentes campos, donde fue un poco tardado, ya que debíamos cambiar de la compañía en el campo compañía.
Una vez tuvimos los 30 registros hechos, hicimos los Queries requeridos utilizando lo aprendido en clase.

Continuar navegando