Vous êtes sur la page 1sur 16

/******************************/

/*USAR PARA BORRAR BD ACTUAL*/


USE master;
drop table Cliente;
DROP DATABASE LIBRERIAS;
/********************************/
CREATE DATABASE LIBRERIAS;
----------------------------------------------------------------------------------------------------------------------------USE LIBRERIAS;
----------------------------------------------------------------------------------------------------------------------------/* TABLA: Cliente */
CREATE TABLE Cliente(
Idcliente
IDENTITY(1,1),
Nombres
Apellidos
Direccion
Telefono
CONSTRAINT
;

int
varchar(40)
varchar(40)
varchar(50)
varchar(11)
PK_Cliente

NOT NULL
NOT NULL,
NOT NULL,
NOT NULL,
NULL,
PRIMARY KEY (Idcliente))

select *from Cliente;


----------------------------------------------------------------------------------------------------------------------------/* TABLA: Libro */
CREATE TABLE Libro(
Idlibro
int
NOT NULL
IDENTITY (1,1),
ISBN
varchar(30)
NOT NULL,
Titulo
varchar(30)
NOT NULL,
Precio
numeric(8,2)
NOT NULL,
Idautor
int
NOT NULL,
CONSTRAINT
PK_Libro
PRIMARY KEY (Idlibro));
select *from Libro;
----------------------------------------------------------------------------------------------------------------------------/* TABLA: Autor */
CREATE TABLE Autor(
Idautor
int
NOT NULL
IDENTITY (1,1),
Nombres
varchar(40)
NOT NULL,
Apellidos
varchar(40)
NOT NULL,
Idpais
int
NOT NULL,
CONSTRAINT
PK_Autor
PRIMARY KEY (Idautor));
select *from Autor;
----------------------------------------------------------------------------------------------------------------------------/* TABLA: Municipio */
CREATE TABLE Municipio(
Idmun
int
NOT NULL
IDENTITY (1,1),
Descripcionmunicipio
varchar(40)
NOT NULL,

Iddep

int

NOT NULL,
CONSTRAINT
PK_Municipio
PRIMARY
KEY (Idmun));
select *from Municipio;
----------------------------------------------------------------------------------------------------------------------------/* TABLA: Pedido */
CREATE TABLE Pedido(
Idpedido
int
NOT NULL
IDENTITY (1,1),
Idlibro
int
NOT NULL,
Idcliente
int
NOT NULL,
Idsucursal
int
NOT NULL,
Fecha_PedIdo
datetime
NOT NULL
,
Cantidad
numeric(3,1)
NOT NULL
,
CONSTRAINT
PK_Pedido
PRIMARY KEY (Idpedido));
select *from Pedido;
----------------------------------------------------------------------------------------------------------------------------/* TABLA: Sucursal */
CREATE TABLE Sucursal(
Idsucursal
int
NOT NULL
IDENTITY (1,1),
Nombresucursal
varchar(60)
NOT NULL
,
DireccionSucursal
nvarchar(100) NOT NULL,
Idmun
int
NOT NULL,
CONSTRAINT
PK_Sucursal
PRIMARY KEY (Idsucursal));
select *from Sucursal;
----------------------------------------------------------------------------------------------------------------------------/* TABLA: Pais*/
CREATE TABLE Pais(
Idpais
int
NOT NULL
IDENTITY (1,1),
Descripcionpais
varchar(40)
NOT NULL
,
CONSTRAINT
PK_Pais
PRIMARY KEY (Idpais));
select *from Pais;
----------------------------------------------------------------------------------------------------------------------------/* TABLA: Departamento*/
CREATE TABLE Departamento(
Iddep
int
NOT NULL
IDENTITY (1,1),
DescripcionDepartamento varchar(40)
NOT NULL,
CONSTRAINT
PK_Departamento PRIMARY
KEY (Iddep));
select *from Departamento;
--------------------------------------------------------------------------------

------------------------------------select *from sys.databases;


select *from sys.tables;
------------------------------------------------------------------------------------------------------------------------------/*******************************************************************************
***************************************************/
/***Aplicacion de las FK Llaves foraneas en todas las tablas que lo requieren*/
/***Aplicacion de las FK Llaves foraneas en todas las tablas que lo requieren*/
/***Aplicacion de las FK Llaves foraneas en todas las tablas que lo requieren*/
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/* AGREGAR LLAVE EXTRANJERA A LA TABLA Libro*/
ALTER TABLE
Libro
ADD CONSTRAINT FK_Autor
_Libro_Idautor
FOREIGN KEY
(Idautor)
REFERENCES
Autor(Idautor);
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/* AGREGAR LLAVE EXTRANJERA A LA TABLA Autor*/
ALTER TABLE
Autor
ADD CONSTRAINT FK_Pais_
Autor_Idpais
FOREIGN KEY
(Idpais)
REFERENCES
Pais(Idpais);
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/* AGREGAR LLAVE EXTRANJERA A LA TABLA Municipio*/
ALTER TABLE
Municipio
ADD CONSTRAINT
FK_Departamento_Municipio_Iddep
FOREIGN KEY
(Iddep)
REFERENCES
Departamento(Iddep);
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/* AGREGAR LLAVE EXTRANJERA A LA TABLA Pedido*/
ALTER TABLE
_Pedido_Idlibro
FOREIGN KEY
REFERENCES

Pedido

ADD CONSTRAINT FK_Libro

(Idlibro)
Libro(Idlibro);

/* AGREGAR LLAVE EXTRANJERA A LA TABLA Pedido*/


ALTER TABLE
te_Pedido_Idcliente

Pedido

ADD CONSTRAINT FK_Clien

FOREIGN KEY
REFERENCES

(Idcliente)
Cliente(Idcliente);

/* AGREGAR LLAVE EXTRANJERA A LA TABLA Pedido*/


ALTER TABLE
Pedido
sales_Pedido_Idsucursal
FOREIGN KEY
(Idsucursal)
REFERENCES
Sucursal(Idsucursal);

ADD CONSTRAINT FK_Sucur

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/* AGREGAR LLAVE EXTRANJERA A LA TABLA Sucursales*/


ALTER TABLE
Sucursal
FK_Municipio_Sucursal_Idmun
FOREIGN KEY
(Idmun)
REFERENCES
Municipio(Idmun);

ADD CONSTRAINT

/*******************************************************************************
**************************************************/
/***llenado de datos en las tablas***/
/*************************************************/
/*Llenamos la tabla Pais para poder hacer la referencia en la tabla autor*/
/*Las llenasmos con el metodo nuevo de ABD (PROCEDIMIENTOS ALMACENADOS)*/
---------------------------------------------------------------------------------------------------------------------/*ejecuctar para guardar en programability - - estores procedures*/
CREATE PROCEDURE AgregarPais
@Descripcionpais
varchar(40)
AS
BEGIN
INSERT INTO Pais(Descripcionpais) VALUES (@Descripcionpais)
RETURN
END
select *from Pais
EXECUTE
EXECUTE
EXECUTE
EXECUTE

AgregarPais
AgregarPais
AgregarPais
AgregarPais

'Colombia'
'Nicaragua'
'Espaa'
'BORRAR'

select *from Pais


DELETE FROM Pais WHERE Descripcionpais='BORRAR'
drop table prueva
create table prueva(
Idsucursal
NOT NULL
IDENTITY (1,1),
Nombresucursal
,
DireccionSucursal
Idmun

int
varchar(60)
nvarchar(100)
int

NOT NULL
NOT NULL,

NOT NULL,)
truncate table "prueva";
select *from "prueva"
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/*ejecuctar para guardar en programability - - estores procedures*/
CREATE PROCEDURE AgregarAutor
@Nombres
varchar(40),
@Apellidos
varchar(40),
@Idpais
int
AS
BEGIN
INSERT INTO Autor(Nombres, Apellidos,Idpais) VALUES (@Nombres, @Apellidos, @Idpa
is)
RETURN
END
DROP PROCEDURE AgregarAutor
select
EXECUTE
EXECUTE
EXECUTE

*from Autor
AgregarAutor 'Gabriel', 'Garca Mrquez', '1'
AgregarAutor 'Rubn', 'Daro', '2'
AgregarAutor 'Miguel', 'De Cervantes', '3'

select *from Autor


----------------------------------------------------------------------------------------------------------------------- /****************************************************************************
*****************************************************/
/***llenado de datos en las tablas***/
/*************************************************/
/*Llenamos la tabla Pais para poder hacer la referencia en la tabla autor*/
/*Las llenasmos con el metodo INSERT INTO*/
/*
INSERT INTO Pais(Descripcionpais)
VALUES('Colombia'),('Nicaragua'),('Espaa')
select *from Pais;*/
/*******************************************************************************
*****************************************************/
/*Agregar datos a la tabla Autor*/
/*INSERT INTO Autor(Nombres,Apellidos,Idpais) /*preguntar sobre pais no lo convi
erte a varchar recosrdar que es FK declarado como INT*/
VALUES('Gabriel', 'Garca Mrquez', '1')
INSERT INTO Autor(Nombres,Apellidos,Idpais)
VALUES('Rubn', 'Daro', '2')
INSERT INTO Autor(Nombres,Apellidos,Idpais)
VALUES('Miguel', 'De Cervantes', '3')*/

select *from Autor;


select *from Pais;
/*******************************************************************************
*****************************************************/
/*Llenamos la tabla Departamentos*/
CREATE PROCEDURE AgregarDepartamento
@DescripcionDepartamento
varchar(40)
AS
BEGIN
INSERT INTO Departamento(DescripcionDepartamento) VALUES (@DescripcionDepartamen
to)
RETURN
END
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE

AgregarDepartamento'CHINANDEGA'
AgregarDepartamento'LEON'
AgregarDepartamento'ESTELI'
AgregarDepartamento'MADRIZ'
AgregarDepartamento'NUEVA SEGOVIA'
AgregarDepartamento'JINOTEGA'
AgregarDepartamento'R.A.A.N'
AgregarDepartamento'MATAGALPA'
AgregarDepartamento'BOACO'
AgregarDepartamento'MANAGUA'
AgregarDepartamento'MASAYA'
AgregarDepartamento'CARAZO'
AgregarDepartamento'GRANADA'
AgregarDepartamento'RIVAS'
AgregarDepartamento'RIO SAN JUAN'
AgregarDepartamento'CHONTALES'
AgregarDepartamento'R.A.A.S'

select *from Departamento;


/*******************************************************************************
*****************************************************/
/**Llenado de la tabla Libro**/
CREATE PROCEDURE AgregarLibro
@ISBN
varchar(30),
@Titulo
varchar(30),
@Precio
numeric(8,2),
@Idautor
int
AS
BEGIN
INSERT INTO Libro(ISBN,Titulo,Precio,Idautor) VALUES (@ISBN,@Titulo,@Precio,@Ida
utor)
RETURN
END
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE
EXECUTE

AgregarLibro'123456789','El Amor en Tiempos del Clera','100','1'


AgregarLibro'987654321','Cantos de Vida y Esperanza','150','2'
AgregarLibro'563254254','Azul','200','2'
AgregarLibro'652352415','Prosas Profanas','180','2'
AgregarLibro'985875424','Cien Aos de Soledad','250','1'
AgregarLibro'125254586','Don Quijote de la Mancha','500','3'

select *from Libro;


select *from Autor;
/*******************************************************************************
*****************************************************/
/**Llenado de la tabla Municipio**/
select *from Municipio;
CREATE PROCEDURE AgregarMunicipio
@Iddep
@Descripcionmunicipio
varchar(30)

int,

AS
BEGIN
INSERT INTO Municipio(Iddep,Descripcionmunicipio) VALUES (@Iddep,@Descripcionmun
icipio)
RETURN
END
/*CHINANDEGA*/
EXECUTE AgregarMunicipio'1','DESCONOCIDO'
EXECUTE AgregarMunicipio'1','EL VIEJO'
EXECUTE AgregarMunicipio'1','PUERTO MORAZAN'
EXECUTE AgregarMunicipio'1','SOMOTILLO'
EXECUTE AgregarMunicipio'1','SANTO TOMAS DEL NORTE'
EXECUTE AgregarMunicipio'1','CINCO PINOS'
EXECUTE AgregarMunicipio'1','SAN PEDRO DEL NORTE'
EXECUTE AgregarMunicipio'1','SAN FRANCISCO'
EXECUTE AgregarMunicipio'1','VILLA NUEVA'
EXECUTE AgregarMunicipio'1','CHINANDEGA'
EXECUTE AgregarMunicipio'1','POSOLTEGA'
EXECUTE AgregarMunicipio'1','CHICHIGALPA'
EXECUTE AgregarMunicipio'1','EL REALEJO'
EXECUTE AgregarMunicipio'1','CORINTO'
/*LEON*/
EXECUTE AgregarMunicipio'2','DESCONOCIDO'
EXECUTE AgregarMunicipio'2','ACHUAPA'
EXECUTE AgregarMunicipio'2','EL SAUCE'
EXECUTE AgregarMunicipio'2','SAN NICOLAS'
EXECUTE AgregarMunicipio'2','SANTA ROSA DEL PEON'
EXECUTE AgregarMunicipio'2','EL JICARAL'
EXECUTE AgregarMunicipio'2', 'LARREYNAGA'
EXECUTE AgregarMunicipio'2','TELICA'
EXECUTE AgregarMunicipio'2','QUEZALGUAQUE'
EXECUTE AgregarMunicipio'2','LEON'
EXECUTE AgregarMunicipio'2','LA PAZ CENTRO'
EXECUTE AgregarMunicipio'2','NAGAROTE'
/*ESTELI*/
EXECUTE AgregarMunicipio'3','DESCONOCIDO'
EXECUTE AgregarMunicipio'3','PUEBLO NUEVO'
EXECUTE AgregarMunicipio'3','CONDEGA'
EXECUTE AgregarMunicipio'3','SAN JUAN DE LIMAY'
EXECUTE AgregarMunicipio'3','ESTELI'
EXECUTE AgregarMunicipio'3','LA TRINIDAD'
EXECUTE AgregarMunicipio'3','SAN NICOLAS'

/*MADRIZ*/
EXECUTE AgregarMunicipio'4','DESCONOCIDO'
EXECUTE AgregarMunicipio'4','SAN JOSE DE CUSMAPA'
EXECUTE AgregarMunicipio'4','LAS SABANAS'
EXECUTE AgregarMunicipio'4','SAN LUCAS'
EXECUTE AgregarMunicipio'4','SOMOTO'
EXECUTE AgregarMunicipio'4','TOTOGALPA'
EXECUTE AgregarMunicipio'4','YALAGUINA'
EXECUTE AgregarMunicipio'4','PALACAGUINA'
EXECUTE AgregarMunicipio'4','TELPANECA'
EXECUTE AgregarMunicipio'4','SAN JUAN DE RIO COCO'
/*aca terminare de llenar las tablas con el metodo aprendido en FBD */
INSERT INTO Municipio(Iddep,Descripcionmunicipio)
VALUES
/*NUEVA SEGOVIA*/
('5','DESCONOCIDO'),('5','SANTA MARIA'),('5','MACUELIZO'),('5','DIPILTO'),('5','
OCOTAL'),('5','MOZONTE'),('5','SAN FERNANDO'),('5','JALAPA'),
('5','MURRA'),('5','CIUDAD SANDINO'),('5','CIUDAD ANTIGUA'),('5','QUILALI'),('5'
,'EL JICARO'),('5','WIWILI DE ABAJO'),
/*JINOTEGA*/
('6','DESCONOCIDO'),('6','LA CONCORDIA'),('6','SAN SEBASTIAN DE YALI'),('6','SAN
RAFAEL DEL NORTE'),('6','JINOTEGA'),('6','WIWILI'),
('6','EL CUA-BOCAY'),('6','PANTASMA'),('6','POSAWAS'),
/*R.A.A.N*/
('7','DESCONOCIDO'),('7','WASPAN'),('7','CABO GRACIAS A DIOS'),('7','PUERTO CABE
ZAS'),('7','PRINZAPOLKA'),('7','BONANZA'),('7','SIUNA'),
('7','BOCANA DE PAIWAS'),('7','ROSITA'),('7','WASLALA'),('7','MULUKUKU'),
/*MATAGALPA*/
('8','DESCONOCIDO'),('8','MATAGALPA'),('8','SEBACO'),('8','SAN ISIDRO'),('8','CI
UDAD DARIO'),('8','TERRABONA'),('8','SAN DIONISIO'),
('8','ESQUIPULAS'),('8','MUY MUY'),('8','SAN RAMON'),('8','MATIGUAS'),('8','RIO
BLANCO'),('8','RANCHO GRANDE'),('8','EL TUMA - LA DALIA'),
/*BOACO*/
('9','DESCONOCIDO'),('9','TEUSTEPE'),('9','SAN JOSE DE LOS REMATES'),('9','SANTA
LUCIA'),('9','BOACO'),('9','CAMOAPA'),('9','SAN LORENZO'),
/*MANAGUA*/
('10','DESCONOCIDO'),('10','SAN FRANCISCO LIBRE'),('10','TIPITAPA'),('10','MANAG
UA'),('10','SAN RAFAEL DEL SUR'),
('10','VILLA EL CARMEN -CARLOS F'),('10','MATEARE'),('10','ESQUIPULAS'),('10','C
IUDAD SANDINO'),('10','TICUANTEPE'),('10','EL CRUCERO'),
/*MASAYA*/
('11','DESCONOCIDO'),('11','TISMA'),('11','MASAYA'),('11','NINDIRI'),('11','SAN
JUAN DE ORIENTE'),('11','LA CONCEPCION'),
('11','MASATEPE'),('11','NANDASMO'),('11','NIQUINOMO'),('11','CATARINA'),('11','
SAN JUAN DE ORIENTE'),
/*CARAZO*/
('12','DESCONOCIDO'),('12','SAN MARCOS'),('12','DIRIAMBA'),('12','DOLORES'),('12
','JINOTEPE'),('12','EL ROSARIO'),

('12','LA PAZ'),('12','SANTA TERESA'),('12','LA CONQUISTA'),


/*GRANADA*/
('13','DESCONOCIDO'),('13','GRANADA'),('13','DIRIOMO'),('13','DIRIA'),('13','NAN
DAIME'),
/*RIVAS*/
('14','DESCONOCIDO'),('14','TOLA'),('14','BELEN'),('14','POTOSI'),('14','BUENOS
AIRES'),('14','SAN JORGE'),('14','RIVAS'),
('14','SAN JUAN DEL SUR'),('14','CARDENAS'),('14','MOYOGALPA'),('14','ALTAGRACIA
'),
/*RIO SAN JUAN*/
('15','DESCONOCIDO'),('15','MORRITO'),('15','EL ALMENDRO'),('15','SAN MIGUELITO'
),('15','SAN CARLOS'),('15','EL CASTILLO'),('15','SAN JUAN DEL NORTE'),
/*CHONTALES*/
('16','DESCONOCIDO'),('16','COMALAPA'),('16','JUIGALPA'),('16','LA LIBERTAD'),('
16','SANTO DOMINGO'),('16','SAN PEDRO DE LOVAGO'),
('16','SANTO TOMAS'),('16','VILLA SANDINO'),('16','ACOYAPA'),('16','CUAPA'),('16
','EL CORAL'),('16','EL AYOTE'),
/*R.A.A.S*/('17','DESCONOCIDO'),('17','PAIWAS'),('17','LAGUNA DE PERLA'),('17','
TORTUGUERO'),('17','DESEMBOCADURA DE RIO GRAN'),
('17','LA CRUZ DE RIO GRANDE'),('17','BLUEFIELDS'),('17','EL RAMA'),('17','MUELL
E DE LOS BUEYES'),('17','NUEVA GUINEA'),
('17','CORN ISLAND'),('17','SAN ANDRES PROV. COLOMBIA'),('17','KUKRA HILL')
SELECT *FROM Departamento;
SELECT *FROM Municipio;
/*******************************************************************************
*****************************************************/
/**Llenado de la tabla Sucursal**/
INSERT INTO Sucursal(Nombresucursal,DireccionSucursal,Idmun)
VALUES ('Librera "La Escasez" Managua','Contiguo al Gancho de Camino, Mercado Or
iental','102'),
('Librera "La Escasez" Leon','Frente a "Bohemios Bar", Leon','24'
)
/*procedimientos almacenados para la tabla cliente*/
CREATE PROCEDURE AgregarCliente
@Nombres
varchar(40),
@Apellidos
varchar(40),
@Direccion
varchar(40),
@Telefono
varchar(11)
AS
BEGIN
INSERT INTO Cliente(Nombres,Apellidos,Direccion,Telefono) VALUES (@Nombres,@Apel
lidos,@Direccion,@Telefono)
RETURN
END
EXECUTE AgregarCliente 'JHOSELIN AUXILIADORA', 'GOMEZ GOMEZ',

'DEL BAN

IC 2C, OESTE 75 VRS SUR',


EXECUTE AgregarCliente 'MARLENE',
A',
'HOTEL INTERNACIONAL 1 C.OESTE',
EXECUTE AgregarCliente 'MARIANO CATALINO',
'BO. ESTELI HEROICO, MANZANA 8, CASA 382',
EXECUTE AgregarCliente 'ROSALIA',
'CONTIGUO A CONAPI',

'6260756'
'BETANCO AGUILER
'2279619'
'BLANDON LOZA',
'7136401'
'CALVO REYES',
'2216122'

EXECUTE AgregarCliente 'DAMARIS DEL CARMEN',


'CENTENO TERCERO', 'COST SUR ES
. O.A.R 1 C. AL OESTE',
'2525896'
EXECUTE AgregarCliente 'MARTHA LORENA',
'DUARTE ESPINOZA', 'CON
TIGUO DONDE FUE GASOLINERA TEXACO',
'7896541'
EXECUTE AgregarCliente 'MARIA DEL ROSARIO',
'FLORES MOLINA',
'FTE TEMPLO BAUTISTA, LA TRINIDAD',
'87082688'
EXECUTE AgregarCliente 'LIGIA CAROLINA',
'GARCIA MOLINA',
'PETRONIC 100 VRS. SUR. LA TRINIDAD',
'86596750'
EXECUTE AgregarCliente 'YAMILETH DEL CARMEN', 'GOMEZ CORRALES',
'D. FUE
DIODECO 2C. SUR',
'8442592'
EXECUTE AgregarCliente 'MARIA MAGDALENA',
'GONZALEZ LAGUNA',
'LAS CAAS',
'963852'
/*Nota: Las opciones de telefono son datos no nullos asi que por este motivo tod
os los clientes tienen telefono.*/
/**Estas dos tablas estan vacias....aun no han sido llenadas con los datos corre
spondiente**/
/*1*/select *from Cliente;
/*2*/select *from Pedido;
/**Estas son las tablas que se llenaron con los valores descargados de la plataf
orma**/
/*3*/select *from Libro;
/*4*/select *from Autor;
/*5*/select *from Municipio;
/*6*/select *from Sucursal;
/*7*/select *from Pais;
/*8*/select *from Departamento;
-----------------------------------------------------------------------------------------------------------------------+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++
CREATE FUNCTION dbo.descuento
ALTER FUNCTION dbo.descuento
(
@Precio numeric(8,2),
@Descuento numeric (2,2)
)
returns numeric
as
begin
return @precio-@precio*@descuento /*para saber el precio con descuento incluido*
/
--return @Precio*@Descuento/100 /*para saber el descuento*/
END
GO

select dbo.descuento(100,0.3) as Descuento


---------------------------------------------------------------------------------------------------------------------------el resultado de este que que le suma el tanto porcientto al total del libro.
ej. 100*15%=115....
CREATE FUNCTION dbo.preciototal
--alter function dbo.preciototal
(
@precio numeric(8,2),
@IVA numeric (2,2)
)
returns numeric
as
begin
return @precio*@IVA+ @precio
END
GO
select dbo.preciototal(100,0.15) as [Precio Total] select ISBN,titulo,precio fro
m Libro
--******************************************************************************
************************************************************
/*practica n2 Bloques de codigos */
DECLARE @CONTADOR INT;
SET @CONTADOR=0
SELECT @CONTADOR
---SELECT @CONTADOR AUTOR
DECLARE @Apellidos VARCHAR (30), @Nombres VARCHAR(30);
SET @Nombres='Sebastian'
SET @Apellidos= 'Sanchez'
SELECT @Nombres as Nombres, @Apellidos as Apellido
DECLARE @CONTADOR INT = 0
SELECT @CONTADOR= COUNT(1) FROM Autor
select @CONTADOR as [Cantidad Autores]
select A.Apellidos+' '+A.Nombres AS [Nombres y Apellidos]
from Autor A order by A.Apellidos
SELECT Apellidos, Nombres FROM Autor ORDER BY 1
----------------------------------------------------------------------select *from Municipio;
select M.Descripcionmunicipio as [Descripcion e ]
from Municipio M order by M.Descripcionmunicipio
declare @contador int=0
select @contador= COUNT(1) from Municipio
select @contador as [Cantidad Municipio]
----------------------------------------------------------------------select* from Departamento

select D.DescripcionDepartamento as [Nombres Del Departamento]


from Departamento D order by D.DescripcionDepartamento
declare @contadordepart int= 0
select @contadordepart= COUNT(1) from Departamento
select @contadordepart as [Cantidad de Departamentos]
/*jodedera (para que sirve?)*/
DECLARE @Descripcion VARCHAR (10);
SET @Descripcion='EL SAUCE'
SELECT @Descripcion as Nombres
----------------------------------------------------------------------select * from Cliente;
select C.Apellidos+' '+C.Nombres as[Nombre y Apellido] from Cliente C order by A
pellidos
declare @contadorclinte int=0
select @contadorclinte=count (1) from Cliente
select @contadorclinte as [Contador de Clintes ]
-------------------------------------------------------------------------select * from Sucursal;
select S.DireccionSucursal as [Nombre Sucursal] from Sucursal S order by S.Direc
cionSucursal
declare @contadorsuc int =0
select @contadorsuc=count (1) from Sucursal
select @contadorsuc as [Contador de sucursal]
-------------------------------------------------------------------------select L.precio,L.titulo,l.ISBN as [titulo del libro] from Libro L order by L.p
recio
declare @contarlibros int=0
select @contarlibros= Count(1) from Libro
select @contarlibros as [Cantidad de Libros]
--------------------------------------------------------------------------------------------------CREATE FUNCTION Calcular_edad
(
@FechaInicial date,
@FechaFinal date
)
RETURNS int
AS
BEGIN
DECLARE @Result int
SELECT @Result = DATEDIFF(year, @FechaInicial,@FechaFinal)
RETURN @Result
END

GO
Select dbo.Calcular_edad('05/11/1980',getdate())AS Edad
--******************************************************************************
********************
/*
1. MOstra en forma de lista los campos que se van a utilizar
2. El unico from va de acuerdo al 1re atributo que se quiere mostrar
3. Unir las llaves con un inner join tomando en cuenta primero la llave
primaria e igualandola con la llave foranea
4. Utilizar el order by*/
SELECT D.DescripcionDepartamento, M.DescripcionMunicipio
FROM Departamento AS D
INNER JOIN Municipio M ON D.Iddep = M.Iddep WHERE D.Iddep=1
ORDER BY D.DescripcionDepartamento, M.Descripcionmunicipio
SELECT
rtrim(A.Nombres)+space(1)+rtrim(A.Apellidos) AS [Nombre y Apellidos], L.Titulo
FROM Autor AS A
INNER JOIN Libro L ON A.Idautor=L.Idautor ORDER BY 2
--******************************************************************************
*******************************
--NOMBRE DE SUCURSAL
--NOMBRE DEL CLIENTE
--TITULO
--FECHA DE PEDIDO
--CANTIDAD
SELECT *FROM Pedido
SELECT S.Nombresucursal AS Sucursal,
RTRIM(C.Nombres)+SPACE(2)+RTRIM(C.Apellidos) AS Clientes,
L.Titulo AS Libro,
P.Fecha_PedIdo AS Fecha,
p.Cantidad AS Cantidad
FROM Sucursal AS S
/*A esta tabla no puede estar contenida en un inner join porque es el from unico
.*/
INNER JOIN Pedido P ON S.Idsucursal=P.Idsucursal
INNER JOIN Cliente C ON C.Idcliente=P.Idcliente
INNER JOIN Libro L ON l.Idlibro=P.Idlibro
---**************************************************************
use LIBRERIAS
/*1*/select *from Cliente;
/*2*/select *from Pedido;
/*3*/select *from Libro;
/*4*/select *from Autor;
/*5*/select *from Municipio;
/*6*/select *from Sucursal;
/*7*/select *from Pais;
/*8*/select *from Departamento;
---+++++++++++++++++++++++++++++++++++++++++
--clase 26 de mayo de 2015
SELECT Nombres,
ISNULL(Nombres, 'Sin Nombre') AS Situacion_Nombre,
LEN(Nombres) AS Longitud
FROM Cliente

--WHERE Nombres IS NULL /*PARA PROBAR LA NULIDAD DE UNA COLUMNA.*/


WHERE Nombres IS NOT NULL /*PARA PROBAR LA NO NULIDAD DE LAS COLUMNAS*/
/*PARA PROBAR LO WHERE DEBES DE ACTIVAR UNO Y DESACTIVAR EL OTRO.*/
SELECT Nombres,
CASE WHEN Nombres IS NULL THEN 'SIN NOMBRE' ELSE Nombres END AS SITUCION
_DE_NOMBRE_2,
ISNULL(Nombres, 'Sin Nombre') AS Situacion_Nombre,
CASE WHEN NOMBRES IS NULL THEN '0' ELSE len(Nombres) END AS Longitud3,
LEN(Nombres) AS Longitud
FROM Cliente
WHERE Nombres IS NOT NULL
SELECT Sucursal.Idsucursal,
Cliente.Idcliente,
Libro.Idlibro,
GETDATE() AS Fecha_pedido
FROM Cliente,
Libro,
Sucursal
-- TAREA PARA EL JUEVES.....
-- Funcion en t-sql que devuelva numeros aleatorios.
-- Funcion en sql que devuelva fechas aleatorias.
SELECT RAND() AS Num_ale
from Cliente
DECLARE @counter smallint;
SET @counter = 1;
WHILE @counter < 5
BEGIN
SELECT RAND() Random_Number
SET @counter = @counter + 1
END;
GO
---*****************************************************************************
************************************
--jueves 28 de mayo de 2015.
use LIBRERIAS
SELECT *FROM Libro
/*libro mas barato*/
SELECT top 1 Titulo, MIN (Precio) AS Barato
FROM Libro
group by Titulo
order by Barato asc
/*libro mas caro*/
SELECT Top 1 Titulo, MAX (Precio) AS Caro
from Libro
Group By Titulo
ORDER BY Caro desc

---*****************************************************************************
************************************
SELECT *FROM Departamento
SELECT D.DescripcionDepartamento,
COUNT(1) AS Total
FROM Departamento D INNER JOIN Municipio M
ON m.Iddep = d.Iddep
GROUP BY D.DescripcionDepartamento
ORDER BY Total desc
SELECT COUNT (*) AS Total FROM Cliente
SELECT COUNT (Telefono) AS Total FROM Cliente
SELECT *FROM Cliente WHERE Telefono IS NULL
---*****************************************************************************
************************************
INSERT INTO Pedido(Idsucursal,Idlibro,Idcliente,Fecha_PedIdo,Cantidad)
SELECT S.Idsucursal
AS ID_SUCURSAL,
L.Idlibro
AS ID_LIBRO,
C.Idcliente
AS ID_CLIENTE,
getdate()-(1.00+ROUND(100*RAND(CONVERT(VARBINARY,NEWID())),0)) A
S FECHA_PEDIDO,
1.00+ROUND(100*RAND(CONVERT(VARBINARY,NEWID())),0) AS Cantidad
FROM Sucursal S, Cliente C, Libro L
SELECT *from Pedido
SELECT GETDATE ()+3
--******************************************************************************
**************************************+
--junio 02, 2015
--++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++
CREATE FUNCTION CalcularDescuento
(@ValorADescontar numeric(8,2),
@Porcentaje INT
)
RETURNS numeric(8,2)
AS
BEGIN
RETURN @ValorADescontar*@porcentaje/100
END
GO
------------------------------------------------------------------------------------------------------------------CREATE FUNCTION PrecioconDescuento
(@ValorADescontar numeric(8,2),
@Porcentaje INT
)

RETURNS numeric(8,2)
AS
BEGIN
RETURN @ValorADescontar-(@ValorADescontar*@porcentaje/100)
END
GO
-- aca se muestra solo el desceunto
SELECT DBO.CalcularDescuento(100.00,30) as DESCUETO
SELECT Titulo, Precio,DBO.CalcularDescuento(Precio,30) AS DESCUENTO
FROM Libro
--aca se muetsra el descuento aplicado
select dbo.PrecioconDescuento(100.00,30)
SELECT Titulo, Precio, DBO.CalcularDescuento(Precio,30) AS [30%_DESCUENTO], dbo.
PrecioconDescuento(Precio,30) AS Precio_Con_Descuento
FROM Libro
---revisar laa plataforma..
ALTER FUNCTION CalcularDescuento
(@ValorADescontar numeric(8,2),
@Porcentaje INT
@Indicador INT
)
RETURNS numeric(8,2)
DECLARE @preciocondescuento Numeric(8,2),@descuento Numeric(8,2)
SET @preciocondescuento=@ValorADescontar-@ValorADescontar*porcentaje/100
SET @descuento=@ValorADescontar*@porcentaje/100

Vous aimerez peut-être aussi