Está en la página 1de 2

--CONTENIDO CLASE 7 --

CREATE DATABASE Clase7;

--CREAR TABLA ESTADOS --


CREATE TABLE Estados(IDEstado int NOT NULL IDENTITY PRIMARY KEY,
Nombre varchar(50) NOT NULL);

--INSERTAR CONTENIDO TABLA ESTADOS --


INSERT INTO Estados(Nombre)
VALUES ('Ingresado en Planta'),('En Camino'),('Espera en sucursal'),('Entregado');

--VERIFICAMOS CONTENIDO--
SELECT * FROM Estados

--CREAR TABLA ENVIOS --


CREATE TABLE Envios(IDEnvio varchar(20) NOT NULL PRIMARY KEY,
IDEstado int FOREIGN KEY REFERENCES Estados(IDEstado),
Descripcion varchar(50) NOT NULL,
FechaEnvio datetime NOT NULL);

--VERIFICAMOS CONTENIDO--
SELECT * FROM Envios

--INSERTAR CONTENIDO TABLA ENVIOS FECHA SISTEMA INGLES--


INSERT INTO Envios (IDEnvio, IDEstado,Descripcion, FechaEnvio)
VALUES ('EN-283450-AR',1,'Paquete fragil','02-25-2021'),
('EX-394899-CO',1,' No colocarlo en lugares humedos', '02-25-2021'),
('EN-485970-CL',2,' Presenta golpes','04-21-2021'),
('EX-298895-UY',3,' Caja Vacia tiene poco peso', '05-17-2021'),
('EX-308498-MX',4,' Presenta abolladura', GETDATE());

--EJEMPLOS LEFT Y RIGHT--


SELECT *FROM Envios
WHERE LEFT(IDENVIO,2)='EX' OR RIGHT(IDEnvio,2) = 'UY';

SELECT *FROM Envios


WHERE LEFT (IDENVIO,2)='EN';

--CONCAT EJEMPLO --
SELECT IDEnvio, IDEstado, CONCAT(IDEnvio, ' ', IDEstado) AS Tracking FROM Envios;

--EJEMPLO CONCAT, RIGHT Y LEFT--


SELECT CONCAT(LEFT(IDEnvio,2), '-', (RIGHT(IDEnvio,2))) AS TipoEnvio, IDEstado,
Descripcion FROM Envios;

--EJEMPLOS REPLACE--
SELECT REPLACE(IDEnvio,'-', ' ') AS NuevoEnvio FROM Envios;

SELECT REPLACE(IDEnvio, 'AR', 'Argentina') AS NuevoEnvio, REPLACE(IDEnvio, 'UY',


'Uruguay') AS TR
FROM Envios;

SELECT REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(IDEnvio,'AR', ' Argentina'), 'CL', '


Chile'), 'UY', 'Uruguay'),'CO', 'Colombia'), 'MX', 'Mexico') AS NuevoTRacking
FROM Envios;

--EJEMPLOS UPPER, LOWER Y TRIM--


SELECT UPPER(Descripcion) AS Mayus FROM Envios;
SELECT LOWER(Descripcion) AS Minus FROM Envios;

SELECT TRIM(Descripcion) AS Comentario FROM Envios;

--SENTENCIAS DE FECHAS--
SELECT YEAR(FechaEnvio) AS Anio , FechaEnvio FROM Envios;

SELECT MONTH(FechaEnvio) AS Mes FROM Envios;

SELECT DAY(FechaEnvio) AS Dia FROM Envios;

SELECT IDEnvio, YEAR(FechaEnvio) as Año, MONTH(FechaEnvio) as Mes, DAY(FechaEnvio)


as Dia FROM Envios;

--FECHA Y WHERE--
SELECT * FROM Envios
WHERE YEAR(FechaEnvio) = 2021;

--NOMBRE DE MES--
SELECT IDEnvio, DATENAME(MONTH,FechaEnvio) AS Mes, FechaEnvio FROM Envios;

--CORRER LOS MESES PARA ADELANTE O PARA ATRAS--


SELECT IDEnvio, DATEADD(MONTH,1,FechaEnvio) AS Mes_Proyeccion, FechaEnvio FROM
Envios;

SELECT IDEnvio, DATEADD(MONTH,-1,FechaEnvio) AS Mes_Proyeccion, FechaEnvio FROM


Envios;

--DIFERENCIA DE FECHAS--
SELECT IDEnvio, DATEDIFF(MONTH, FechaEnvio,GETDATE()) AS Diferencia, FechaEnvio
FROM Envios;

--EJEMPLO FUNCIONES ESCALARES NUMERICAS --


SELECT FLOOR (22.5) AS Ejemplo;

SELECT CEILING (22.4) AS Ejemplo;

SELECT ROUND (22.57,0) AS EJEMPLO;

SELECT ABS (-22.5) AS Ejemplo;

--CAMBIO DE TIPO DE CAMPO--


SELECT CAST(FechaEnvio AS varchar(50)) AS NuevaFecha FROM Envios;

--EJEMPLO SUBCONSULTAS--
SELECT IDEnvio, IDEstado, Descripcion
FROM Envios
WHERE IDEstado = 4;

SELECT IDEnvio, IDEstado, Descripcion


FROM Envios
WHERE IDEstado = (SELECT IDEstado FROM Estados WHERE Nombre='Entregado');

También podría gustarte