You are on page 1of 23

Create Database Caballo

Create Table Caballos


(
ID int,
Nombre_Caballo nvarchar(20),
Color nvarchar(10),
)
Create Table Carrera
(
ID int,
Longitud int,
Nombre nvarchar(30),
)
Create Table Premio
(
ID int,
Descripcion money,
)
Create Table Criadores
(
ID int,
Nombre varchar(20),
App varchar(20),
Apm varchar(20),
Anyo int,
--Fecha_Inicial smalldatetime,
)
Create Table Jinete
(
ID int,
Nombre varchar(20),
App varchar(20),
Apm varchar(20),
Edad int,
Apodo varchar(20),
)
Insert Into Caballos
values(46,'Pegaso','Blanco')
Insert Into Caballos
values(44,'Furia','Cafe')
Insert Into Caballos
values(41,'Corsel','Negro')
Insert Into Caballos
values(46,'Molinero','Negro')
Insert Into Caballos
values(41,'Blanco de Napolen','Blanco')
Insert Into Caballos
values(46,'Rambo','Blanco')

Insert Into Caballos


values(42,'Viento','Blanco')
Insert Into Caballos
values(49,'Furia','Cafe')
Insert Into Caballos
values(45,'Pura Sangre','Negro')
Insert Into Caballos
values(47,'Fuego','Cafe')
Insert Into Carrera
values(20,1000,'Inicio de Temporada')
Insert Into Carrera
values(21,1500,'Feria de San Buenaventura')
Insert Into Carrera
values(22,2000,'Choque de Titanes')
Insert Into Carrera
values(23,1200,'Feria de Cuatrocienegas')
Insert Into Carrera
values(24,1700,'Rapidos y Furiosos')
Insert Into Carrera
values(25,3500,'Furia de Titanes')
Insert Into Carrera
values(26,2200,'No les veras ni el polvo')
Insert Into Carrera
values(27,3300,'Evento Beneficiencia Cruz Roja')
Insert Into Carrera
values(28,1600,'Y que siga la fiesta')
Insert Into Carrera
values(29,1900,'Cabalgata Candela 2013')
Insert Into Premio
values(20,10000.00)
Insert Into Premio
values(21,15000.00)
Insert Into Premio
values(22,20000.00)
Insert Into Premio
values(23,40000.00)
Insert Into Premio
values(24,50000.00)
Insert Into Premio
values(25,35000.00)
Insert Into Premio
values(26,22000.00)

Insert Into Premio


values(27,47000.00)
Insert Into Premio
values(28,19000.00)
Insert Into Premio
values(29,25000.00)
Insert Into Criadores
values(48,'Mario','Lopez','Fernandez',11)
Insert Into Criadores
values(43,'Enrique','Hinojosa','Iiguez',7)
Insert Into Criadores
values(46,'Alfredo','Gutierrez','Duran',14)
Insert Into Criadores
values(44,'Miguel','Martinez','Sanchez',6)
Insert Into Criadores
values(49,'Uriel','Perez','Espinoza',2)
Insert Into Criadores
values(44,'Jaime','Aguilar','Sanchez',8)
Insert Into Criadores
values(41,'Servando','Cruz','Ruiz',4)
Insert Into Criadores
values(42,'Daniel','Cabrera','Noriega',15)
Insert Into Criadores
values(47,'Hector','Corona','Mora',13)
Insert Into Criadores
values(47,'Jorge Ivan','Gomez','Diaz',3)
Insert Into Jinete
values(40,'Rodrigo','Castillo','Danes',26,'Comandante')
Insert Into Jinete
values(41,'Felipe','Garza','Ramirez',31,'Negro Garza')
Insert Into Jinete
values(42,'Jose','Ortiz','Reyes',24,'Josesito Jr')
Insert Into Jinete
values(43,'Cristian','Romero','Cardenas',29,'Trovador')
Insert Into Jinete
values(44,'Vicente','Guerrero','Fuentes',34,'Valdo')
Insert Into Jinete
values(45,'Ignacio','Lopez','Escobar',30,'Nacho')
Insert Into Jinete
values(46,'Juan Carlos','Montoya','Jimenez',24,'JC')

Insert Into Jinete


values(47,'Alberto','Navarro','Alvarez',27,'Beto')
Insert Into Jinete
values(48,'Santiago','Meza','Gutierrez',22,'Santi')
Insert Into Jinete
values(49,'Adrian','Duarte','Solano',27,'Chilango')
SELECT D.ID, L.Nombre_Caballo, L.Color, D.Nombre, D.App
FROM Caballos L INNER JOIN Criadores D
ON L.ID = D.ID
Where L.Nombre_Caballo like'%e%'
SELECT *
FROM Caballos L LEFT OUTER JOIN Jinete J
ON L.ID = J.ID
SELECT *
FROM Jinete J RIGHT OUTER JOIN Criadores D
ON J.ID = D.ID
SELECT (D.Nombre +' '+D.App)AS Criadores, Anyo as Experiencia
FROM Jinete J RIGHT OUTER JOIN Criadores D
ON J.ID = D.ID
Where D.Anyo > 5
SELECT R.ID, R.Nombre, R.Longitud, P.Descripcion AS [Premio]
FROM Carrera R FULL OUTER JOIN Premio P
ON R.ID = P.ID
Where R.Longitud > 1000 AND P.Descripcion < 35000
SELECT R.ID, R.Nombre, R.Longitud, M.Descripcion
FROM Carrera R FULL OUTER JOIN Premio M
ON R.ID = M.ID
Where R.Longitud > 2000
SELECT *
FROM Caballos L
RIGHT OUTER JOIN Criadores D ON L.ID = D.ID
INNER JOIN Jinete J ON J.ID = D.ID
Where D.Anyo < 15
SELECT L.Nombre_Caballo, L.Color, D.Nombre, D.App , Anyo AS 'Experiencia
Criador', Apodo as Jinete
FROM Caballos L
LEFT OUTER JOIN Criadores D ON L.ID = D.ID
RIGHT OUTER JOIN Jinete J ON J.ID = D.ID
Where J.Edad > 25
SELECT *
FROM Criadores D
INNER JOIN Caballos L ON L.ID = D.ID
LEFT OUTER JOIN Jinete J ON J.ID = D.ID
Where L.Color = 'Cafe'
SELECT R.ID, R.Nombre,P.Descripcion AS [Premio]
FROM Premio P RIGHT OUTER JOIN Carrera R
ON P.ID = R.ID
Where P.Descripcion > 35000

SELECT R.ID, R.Nombre,R.Longitud, P.Descripcion


FROM Premio P FULL JOIN Carrera R
ON P.ID = R.ID
Where R.Longitud > 1200
SELECT *
FROM Caballos L
LEFT OUTER JOIN Criadores D ON L.ID = D.ID
RIGHT OUTER JOIN Jinete J ON J.ID = D.ID
Where J.Edad >= 20 AND J.Edad <= 30
SELECT J.Apodo as Jinete, L.Nombre_Caballo , L.Color, (D.Nombre +' '+
D.App) AS Criador
FROM Jinete J
RIGHT OUTER JOIN Caballos L ON L.ID = J.ID
LEFT OUTER JOIN Criadores D ON J.ID = D.ID
Where J.Apodo <> 'JC'
SELECT *
FROM Criadores D
LEFT OUTER JOIN Jinete J ON D.ID = J.ID
RIGHT OUTER JOIN Caballos L ON J.ID = L.ID
Where L.Nombre_Caballo <> 'Furia'
SELECT R.ID, R.Nombre,P.Descripcion AS [Premio]
FROM Premio P RIGHT OUTER JOIN Carrera R
ON P.ID = R.ID
Where P.Descripcion > 35000
SELECT M.ID, R.Nombre,R.Longitud, M.Descripcion
FROM Carrera R FULL JOIN Premio M
ON M.ID = R.ID
Where M.Descripcion > 20000 AND M.Descripcion < 40000
Create view vista_NO_ApodoJC as
SELECT J.Apodo as Jinete, L.Nombre_Caballo, L.Color, (D.Nombre +' '+
D.App) AS Criador
FROM Jinete J
RIGHT OUTER JOIN Caballos L ON L.ID = J.ID
LEFT OUTER JOIN Criadores D ON J.ID = D.ID
Where J.Apodo <> 'JC'
Select * From vista_NO_ApodoJC

Create view vista_EdadJinete as


SELECT L.Nombre_Caballo, L.Color, J.Apodo, (D.Nombre+' '+D.App) as
Criadores
FROM Caballos L
LEFT OUTER JOIN Criadores D ON L.ID = D.ID
RIGHT OUTER JOIN Jinete J ON J.ID = D.ID
Where J.Edad >= 20 AND J.Edad <= 30
Select * From vista_EdadJinete
Create view vista_PremioCarrera as
SELECT R.ID, R.Nombre, R.Longitud, P.Descripcion
FROM Premio P FULL JOIN Carrera R
ON P.ID = R.ID
Where R.Longitud > 1200

Select * From vista_PremioCarrera


Create view vista_CaballosCafe as
SELECT (D.Nombre+' '+D.App+' '+D.Apm) AS 'Criador', L.Nombre_Caballo,
L.Color, J.Apodo
FROM Criadores D
INNER JOIN Caballos L ON L.ID = D.ID
LEFT OUTER JOIN Jinete J ON J.ID = D.ID
Where L.Color = 'Cafe'
Select * From vista_CaballosCafe

Facultad de Ingeniera Mecnica


y Elctrica

Base de Datos II
MI. LAURA CRISTINA VZQUEZ DE LOS SANTOS

TRABAJO PRIMER PARCIAL


Angel Jurez
Mendoza
6 ISC
A
Aula
17

Create Database Caballo


Create Table Caballos
(
ID int,
Nombre_Caballo nvarchar(20),
Color nvarchar(10),
)
Create Table Carrera
(
ID int,
Longitud int,
Nombre nvarchar(30),
)
Create Table Premio
(
ID int,
Descripcion money,
)
Create Table Criadores
(
ID int,
Nombre varchar(20),
App varchar(20),
Apm varchar(20),
Anyo int,
--Fecha_Inicial smalldatetime,
)
Create Table Jinete
(
ID int,
Nombre varchar(20),
App varchar(20),
Apm varchar(20),
Edad int,
Apodo varchar(20),
)

----------------------------------------------

Insert Into Caballos


values(9091,'Pegaso','Blanco')
Insert Into Caballos
values(9092,'Furia','Cafe')
Insert Into Caballos
values(9093,'Corsel','Negro')

Insert Into Caballos


values(9094,'Molinero','Negro')
Insert Into Caballos
values(9095,'Blanco de Napolen','Blanco')

Insert Into Caballos


values(9091,'Rambo','Blanco')
Insert Into Caballos
values(9092,'Viento','Blanco')
Insert Into Caballos
values(9093,'Furia','Cafe')
Insert Into Caballos
values(9094,'Pura Sangre','Negro')
Insert Into Caballos
values(9095,'Fuego','Cafe')
Update Caballos
Set ID = 9096
Where Nombre_Caballo = 'Furia'
Update Caballos
Set Nombre_Caballo = 'Campeon'
Where ID = 9095
Delete Caballos
Where Nombre_Caballo = 'Corsel'
Delete Caballos
Where Color = 'Negro'
-----------------

Insert Into Carrera


values(19191,1000,'Inicio de Temporada')
Insert Into Carrera
values(35498,1500,'Feria de San Buenaventura')
Insert Into Carrera
values(31997,2000,'Choque de Titanes')

Insert Into Carrera


values(95324,1200,'Feria de Cuatrocienegas')
Insert Into Carrera
values(62997,1700,'Rapidos y Furiosos')

Insert Into Carrera


values(96298,3500,'Furia de Titanes')
Insert Into Carrera
values(32977,2200,'No les veras ni el polvo')
Insert Into Carrera
values(54934,3300,'Evento de Beneficiencia Cruz Roja')
Insert Into Carrera
values(23197,1600,'Y que siga la fiesta')
Insert Into Carrera
values(98195,1900,'Cabalgata Candela 2013')
Update Carrera
Set Longitud = 4100
Where Nombre = 'Inicio de Temporada'
Update Carrera
Set ID = 15
Where Nombre = 'Feria de San Buenaventura'
Delete Carrera
Where ID = 13
Delete Carrera
Where Longitud >= 2000
------------------

Insert Into Premio


values(20,10000.00)
Insert Into Premio
values(21,15000.00)
Insert Into Premio
values(22,20000.00)
Insert Into Premio
values(23,40000.00)
Insert Into Premio
values(24,50000.00)
Insert Into Premio

values(25,35000.00)
Insert Into Premio
values(26,22000.00)
Insert Into Premio
values(27,47000.00)
Insert Into Premio
values(28,19000.00)
Insert Into Premio
values(29,25000.00)
Update Premio
Set Descripcion = Descripcion*1.10
Where Descripcion <=20000.00
Update Premio
Set ID = 25
Where Descripcion = 50000.00
Delete Premio
Where Descripcion = 40000.00
Delete Premio
Where ID = 20
-------------------

Insert Into Criadores


values(30,'Mario','Lopez','Fernandez',11)
Insert Into Criadores
values(31,'Enrique','Hinojosa','Iiguez',7)
Insert Into Criadores
values(32,'Alfredo','Gutierrez','Duran',14)
Insert Into Criadores
values(33,'Miguel','Martinez','Sanchez',6)
Insert Into Criadores
values(34,'Uriel','Perez','Espinoza',2)

Insert Into Criadores


values(30,'Jaime','Aguilar','Sanchez',8)
Insert Into Criadores
values(31,'Servando','Cruz','Ruiz',4)
Insert Into Criadores
values(32,'Daniel','Cabrera','Noriega',15)
Insert Into Criadores
values(33,'Hector','Corona','Mora',13)

Insert Into Criadores


values(34,'Jorge Ivan','Gomez','Diaz',3)
Update Criadores
Set ID = 35
Where Nombre = 'Uriel'
Update Criadores
Set Anyo = 8
Where ID = 31
Delete Criadores
Where ID = 32
Delete Criadores
Where App = 'Lopez'
------------------

Insert Into Jinete


values(40,'Rodrigo','Castillo','Danes',26,'Comandante')
Insert Into Jinete
values(41,'Felipe','Garza','Ramirez',31,'Negro Garza')
Insert Into Jinete
values(42,'Jose','Ortiz','Reyes',24,'Josesito Jr')
Insert Into Jinete
values(43,'Cristian','Romero','Cardenas',29,'Trovador')
Insert Into Jinete
values(44,'Vicente','Guerrero','Fuentes',34,'Valdo')
Insert Into Jinete
values(45,'Ignacio','Lopez','Escobar',30,'Nacho')
Insert Into Jinete
values(46,'Juan Carlos','Montoya','Jimenez',24,'JC')
Insert Into Jinete
values(47,'Alberto','Navarro','Alvarez',27,'Beto')
Insert Into Jinete
values(48,'Santiago','Meza','Gutierrez',22,'Santi')
Insert Into Jinete
values(49,'Adrian','Duarte','Solano',27,'Chilango')
Update Jinete
Set Apodo = 'Invencible'
Where Apodo = 'Valdo'
Update Jinete
Set ID = 45
Where ID = 44
Delete Jinete
Where Apodo = 'Negro Garza'
Delete Jinete
Where Nombre = 'Jose'
----------------------------------------------------------------------------------------------------------------------------------------

/*----------- CONSULTAS --------------------*/


-- Mostrar el numero de aos del Jinete con mayor edad
Select MAX(Edad) As Edad
From Jinete

-- Mostrar el monto total de premios


Select SUM(Descripcion) As 'Monto Total de Premios'
From Premio

-- Mostrar el Nombre y la Longitud de las carreras que son iguales o mayores a


1500 metros
Select Nombre, Longitud
From Carrera
Where Longitud >= 1500

-- Muestre el Nombre de los caballos que son blancos


Select Nombre_Caballo
From Caballos
Where Color = 'Blanco'

-- Mostrar el nombre completo y los aos de experiencia de los criadores con 5 o


mas aos de experiencia
Select (Nombre+' '+App+' '+Apm) As Criadores, Anyo as Experiencia
From Criadores
Where Anyo >= 5

-- Mostrar el nombre completo y el apodo de los Jinetes que tengan al menos una r
en su apellido paterno
Select (Nombre+' '+App+' '+Apm) As Jinete, Apodo
From Jinete
Where App like'%r%'

-- Mostrar el promedio de aos de experiencia de los criadores


Select AVG(Anyo) as 'Promedio de Experiencia de Criadores'
From Criadores

-- Mostrar cuantas carreras son de una longitud de 1500 metros o menos


Select COUNT(*) As 'Nmero de Carreras'
From Carrera
Where Longitud <= 1500

-- Mostrar toda la informacion referente a los premios mayores de 20 mil pesos


Select *
From Premio
Where Descripcion > 20000.00

-- Mostrar el apodo y la edad de los jinetes cuya edad es de 27 aos o mas


Select Apodo, Edad
From Jinete
Where Edad >= 27

You might also like