Documentos de Académico
Documentos de Profesional
Documentos de Cultura
A. TTULO DE LA EXPERIENCIA
Fundamentos del Lenguaje T-SQL
B. TEMAS:
Tema #3. Fundamentos del Lenguaje SQL
C. OBJETIVO(S):
Introducir al estudiante en los Fundamentos del Lenguaje T-SQL
Caso #2
/*
Explique que hace esta lnea de cdigo
Para explicar el cdigo SQL
*/
R/. Es utilizado para hacer comentarios ms largos (Prrafos) en los cdigos de programacin, los
cuales son importantes ya que podemos describir ciertas funciones que se estn utilizando en la
implementacin del cdigo.
----------------------------------------------------------------------------------------------------------
2. Uso de variables Locales
Ejecute el siguiente cdigo SQL y explique su comportamiento.
----------------------------------------------------------------------------------------------------------
Caso #3
DECLARE
@numero int,
@copiar int,
@suma int
SELECT @numero = 10
SELECT @copiar = @numero, @suma = @numero + 100
SELECT @copiar AS [Variable Copiar]
SELECT @suma AS [Variable SUMA]
Go
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
La funcin DECLARE se utiliza principalmente para declarar variable, para luego ser utilizadas
en los procesos o cdigos de programacin. En las cuales se pueden cualquier tipo de variables
ya sea INT, CHAR, entre otras.
Caso #4
SELECT * FROM TB_CLIENTE
En la primera consulta mostramos todos los clientes de la tabla, se cre una variable
@Codigo_cliente en la cual se iba a almacenar el cdigo del cliente correspondiente a
Juan Delgado, imprimimos la variable.
Caso #5
SELECT * FROM TB_CLIENTE
DECLARE @NombreCliente VarCHAR(40)
DECLARE @ApellidoCliente VarCHAR(40)
UPDATE TB_CLIENTE
SET Nombre_Cliente='Alberto',
PrimerApellido_Cliente = 'Chavez',
@NombreCliente=Nombre_Cliente,
@ApellidoCliente=PrimerApellido_Cliente
WHERE Codigo_Cliente='00001'
La primera consulta nos desplego al igual que la anterior los clientes de la tabla, pero en
esta declaramos dos variables @NombreCliente @ApellidoCliente estas iban a ser las
encargadas de reservar el nombre y apellido del cliente con cdigo 00001, antes de
ejecutar la actualizacin sobre los campos. Se imprimen las variables.
Caso #6
SELECT @Codigo_Cliente=Codigo_Cliente
FROM TB_Cliente
WHERE Nombre_Cliente = 'Juan' and PrimerApellido_Cliente = 'Delgado'
DECLARE @Codigo_Cliente CHAR(11)
SELECT @Codigo_Cliente
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #7
SELECT @Codigo_Cliente=Codigo_Cliente
FROM TB_Cliente
WHERE Nombre_Cliente = 'Juan' and PrimerApellido_Cliente = 'Delgado'
DECLARE @Codigo_Cliente CHAR(11)
SELECT @Codigo_Cliente
GO
Existe una incongruencia entre el tipo de dato declarado en la variable y el tipo de dato
establecido para el campo al cual hacemos referencia con la variable, el tipo de dato
declarado no es el esperado y se produce un error en el tipificado de datos.
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #8
DECLARE @nombre_cliente float
SELECT @nombre_cliente=Nombre_Cliente
FROM TB_Cliente
WHERE Nombre_Cliente = 'Alberto' and PrimerApellido_Cliente =
'Chavez'
SELECT @nombre_cliente
GO
Igual que en el caso anterior, se presenta una incongruencia en el tipo de dato declarado
para la variable y el esperado segn el campo.
Caso #9
SELECT * FROM tb_cliente
DECLARE @valor SMALLMONEY
En la primera consulta desplegamos los clientes, definimos una variable @valor la cual
iba a almacenar para la segunda consulta el ultimo saldo correspondiente a los clientes de
Santiago, despus que este fuese mayor a cero. Se realiza la misma operacin con los
clientes de Chitre y se imprime.
Caso #10
DECLARE @cliente VARCHAR(5)
-- le asignamos a la variable un valor de la tabla.
SELECT @cliente = codigo_cliente
FROM TB_Cliente
WHERE Email_Cliente = 'claudiasoto@hotmail.com'
En la variable @cliente almacenamos el cdigo del cliente que cumpla el criterio, una vez
obtenido lo comparamos en el criterio de la segunda consulta para obtener los datos
correspondientes al cliente del cdigo obtenido en @cliente.
----------------------------------------------------------------------------------------------------------
3. Uso de variables GLOBALES
Ejecute el siguiente cdigo SQL y explique su comportamiento.
----------------------------------------------------------------------------------------------------------
Caso #11
SELECT * FROM TB_PAGO_FACTURA_COMPRA
WHERE Fecha_Pago = '06/03/2012'
Caso #12
DELETE FROM TB_Cliente
SELECT @@error [Numero del Error]
----------------------------------------------------------------------------------------------------------
4. Precedencia Operadores: Prioridades
Ejecute el siguiente cdigo SQL y explique su comportamiento.
----------------------------------------------------------------------------------------------------------
Caso #13
DECLARE @Numero int;
SET @Numero = 4 - 2 + 27;
-- Evala a 2 + 27 el cual produce el resultado de 29.
SELECT @Numero [Valor de Salida];
Go
Cuando en una expresin los operadores tienen el mismo nivel de prioridad, se evala
toda la expresin de izquierda a derecha de acuerdo a la posicin del operador en la
expresin.
Caso #14
DECLARE @Numero int;
SET @Numero = 2 * 4 + 5;
-- Evaluar 8 + 5 debe producir como resultado 13.
SELECT @Numero [Valor de Salida];
Go
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #15
DECLARE @Numero int;
SET @Numero = 2 * (4 + 5);
-- Evaluar a 2 * 9 debe producir como resultado 18.
SELECT @Numero [Valor de Salida];
Go
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #16
DECLARE @Numero int;
SET @Numero = 2 * (4 + (5 - 3) );
-- Evaluar 2 * (4 + 2) el cual evala a 2 * 6, y produce como resultado 12.
SELECT @Numero [Valor de Salida];
----------------------------------------------------------------------------------------------------------
5. Funciones para el Manejo de Cadenas
Ejecute el siguiente cdigo SQL y explique su comportamiento.
----------------------------------------------------------------------------------------------------------
Caso #17
-- FUNCION CONCAT
DECLARE @Cadena CHAR(100)
SET @Cadena=CONCAT( 'Feliz ', 'Cumpleaos ', 'hoy ', 15, '/', '09' );
SELECT @Cadena AS [Cadena de Salida]
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Al utilizar la funcin concat estamos uniendo todos los valores indicados en los
argumentos de la funcin, en una sola cadena. Por ello el resultado.
Caso #18
SELECT CONCAT(Nombre_Cliente, PrimerApellido_Cliente, SegundoApellido_Cliente)
AS [Nombre del Cliente]
FROM TB_CLIENTE
GO
En este caso concatenamos los registros de algunos campos relacionados con los clientes.
Nombre, primer y segundo apellido.
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #19
SELECT CONCAT(Nombre_Cliente, +' '+ PrimerApellido_Cliente,
+' '+ SegundoApellido_Cliente) AS [Nombre del Cliente]
FROM TB_CLIENTE
GO
Caso #20
--FUNCION LEN
DECLARE @Cadena CHAR(50)
SET @Cadena = 'Esta es la longitud de la cadena'
SELECT LEN(@Cadena) [Tamao de la Cadena]
Utilizamos la funcin LEN esta permite saber el nmero de caracteres de una cadena, la
primera consulta posee menos caracteres, pues en la segunda al comienzo incluye algunos
espacios en blanco, que son tomados en cuenta y contabilizados por la funcin.
Caso #21
SELECT LEN(Nombre_Cliente) AS [Longitud del Nombre],
Nombre_Cliente, PrimerApellido_Cliente
FROM TB_Cliente
WHERE Direccion_Cliente = 'Chitre';
GO
Utilizado la funcin LEN obtuvimos el total de caracteres en los nombres de los clientes
cuya direccin es Chitr.
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #22
--FUNCION LOWER (Transact-SQL)
SELECT LOWER(Nombre_Cliente) AS [Nombre Minscula],
PrimerApellido_Cliente
FROM TB_Cliente
GO
Caso #23
--FUNCION UPPER (Transact-SQL)
SELECT UPPER(Nombre_Cliente) AS [Nombre Mayscula],
PrimerApellido_Cliente FROM TB_Cliente
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #24
--FUNCION SUBSTRING (Transact-SQL)
SELECT SUBSTRING(Nombre_Cliente,4,8) AS [Primer Caracter del Nombre],
Nombre_Cliente, PrimerApellido_Cliente FROM TB_Cliente
GO
En este caso, obtuvimos a travs de la funcin SubString parte de caracteres del nombre
de los clientes, iniciando en el cuarto carcter, hasta 8 caracteres.
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #25
SELECT UPPER(SUBSTRING(Nombre_Cliente,3,2))
AS [Primer Caracter del Nombre en Mayscula],
Nombre_Cliente, PrimerApellido_Cliente
FROM TB_Cliente
GO
Caso #26
--LTRIM (Transact-SQL)
DECLARE @Cadena CHAR(100)
SET @Cadena=' Esta es una Lnea con caracteres para
contar'
SELECT @CADENA [Cadena Original ], LEN(@Cadena) [Longitud Original],
LTRIM(@CADENA)
[Cadena de Salida], LEN(LTRIM(@CADENA)) [Longitud Real]
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Imprimimos la cadena original con los espacios iniciales, mostramos su longitud original
y utilizando la funcin LTRIM nos devuelve la expresin original, pero sin los espacios
iniciales en blanco. Y, utilizando funciones anidadas, primero LTRIM para eliminar los
espacios y luego LEN, para contabilizarla, obtenemos la longitud real sin espacios.
Caso #27
DECLARE @Cadena CHAR(100)
SELECT @Cadena=' Esta es una Lnea con caracteres para
contar'
SELECT LEN(@Cadena), @CADENA, LTRIM(@Cadena), LEN(LTRIM(@Cadena))
GO
En este caso, se realiza exactamente lo mismo que en el anterior A diferencia que los
campos no poseen un alias.
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #28
--RTRIM
DECLARE @Cadena1 varchar(100)
SET @Cadena1 ='Esta es una Lnea con caracteres para contar. '
SELECT @Cadena1 + ' Adicional con nuevos caracteres'
SELECT RTRIM(@Cadena1) + ' Adicional con nuevos caracteres'
GO
Declaramos una variable a la cual le asignamos una cadena con algunos espacios al final,
le concatenamos otra cadena e imprimimos. Utilizando la funcin RTRIM logramos
truncar los espacios finales nulos de entre la cadena y mostrarla correctamente.
Caso #29
--LEFT
SELECT LEFT('00001-Computadoras DEll Inspiron',5);
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #30
SELECT CONCAT(Codigo_Cliente, '-', UPPER(LEFT(Nombre_Cliente,3))) AS [Codigo
Interno],
Nombre_Cliente, PrimerApellido_Cliente
FROM TB_Cliente
GO
Caso #31
SELECT RIGHT('Computadoras DEll Inspiron-00001',5);
GO
Con la funcin RIGHT se muestra la parte derecha de la cadena, segn el nmero de los
caracteres especificados en los argumentos, para el caso 5.
Caso #32
SELECT CONCAT(UPPER(RIGHT(Nombre_Cliente,3)), '-', Codigo_Cliente) AS [Codigo
Interno],
Nombre_Cliente, PrimerApellido_Cliente
FROM TB_Cliente
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Concatenamos a travs de la funcin CONCAT los tres ltimos caracteres del nombre de
cada cliente mediante RIGHT. Y, seguido el cdigo de cliente, formando un cdigo
interno. Tambin se muestran el nombre y apellido de cada cliente.
Caso #33
--STUFF
DECLARE @Cadena char(5)
SET @Cadena = '00001'
SELECT STUFF('Juan Peralta--', 14, 5, @Cadena);
GO
Mediante la funcin STUFF insertamos una cadena en otra, para este caso a partir de la
posicin de inicio 14 para la primera cadena, y la longitud 5, para la segunda cadena
almacenada en la variable.
Caso #34
DECLARE @Cadena char(5)
SET @Cadena='00001'
SELECT STUFF('Juan Peralta--', 14, 5, @Cadena);
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #35
DECLARE @Identificador CHAR(20)
DECLARE @Clave CHAR(5)
SET @Identificador='01-02-999-0205'
SELECT @Identificador
SET @Clave=SUBSTRING(@Identificador,7,5)
SELECT @Clave
SELECT STUFF(Codigo_Cliente,1,3,@Clave) AS [Campo Unico],
Nombre_Cliente, PrimerApellido_Cliente
FROM TB_Cliente
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #36
--Funcin STR
SELECT STR(123.45, 4, 1);
GO
Para este caso utilizando la funcin STR logramos obtener datos de caracteres de los datos
numricos introducidos en los argumentos de la funcin, como en el argumento que hace
referencia a la longitud le indicamos 4, contara la expresin hasta en punto decimal y
mostrara solo la parte entera.
Caso #37
--Funcin CAST
DECLARE @Valor Decimal (20, 15);
SET @Valor = 453.989845686543278;
SELECT @Valor [Valor en Decimal];
SELECT CONCAT(CAST(@Valor as varchar(20)), ' + Valor en Cadena') [Valor en
Cadena];
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
En este caso se concatena una cadena con una variable la cual era de tipo decimal y que
para poder usar con la funcin CONCAT se tuvo que cambiar su tipo de dato a travs de
la funcin CAST que nos permite convertir una expresin de un tipo de dato en otro, en
este caso una variable que contena un valor decimal.
Caso #38
--Funcin CONVERT
DECLARE @Valor Decimal (20, 15);
SET @Valor = 4567.989845686543278;
SELECT @Valor [Valor en Decimal];
SELECT CONCAT(CONVERT(varchar(20), @Valor), ' + Valor en Cadena') [Valor en
Cadena];
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Este caso es similar al caso anterior a diferencia que para convertir el tipo de dato de la
variable se utiliz otra funcin, la funcin CONVERT la cual al igual que CAST, nos
permite convertir una expresin de un tipo de datos en otro.
Caso #39
DECLARE @Valor Decimal (5, 2);
SELECT CONCAT(Nombre_Cliente, ' - ', PrimerApellido_Cliente) [Nombre del
Cliente],
CONCAT(CONVERT(varchar(10), Saldo_Cliente),' + 04-456-890') [Saldo + N Cuenta
Ahorro]
FROM TB_CLIENTE
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Para este caso, en el primer campo se muestra la concatenacin del nombre y el primer
apellido de los clientes, y en el segundo, la concatenacin del campo saldo cliente,
convertido a varchar a travs de la funcin CONVERT. Y, un valor tipo cadena.
Formando as en el segundo campo un saldo ms un nmero de cuenta, ambos valores
son cadenas de textos.
----------------------------------------------------------------------------------------------------------
6. Funciones para el Manejo de Cadenas
Ejecute el siguiente cdigo SQL y explique su comportamiento.
----------------------------------------------------------------------------------------------------------
Caso #40
--Funcin POWER
DECLARE @Valor1 float;
DECLARE @Valor2 float;
SET @Valor1= 2;
SET @Valor2 = 2.5;
SELECT POWER(@Valor1, 3) AS Resultado1, POWER(@Valor2, 3) AS Resultado2;
-- Funcin ROUND
SELECT ROUND(123.9994, 3), ROUND(123.9995, 3);
GO
Utilizando la funcin POWER podemos elevar una expresin determinada a una potencia
especificada, para este caso la expresin fueron dos variables a las cuales se les elevo al
cubo.
Aqu utilizamos la funcin ROUND la cual devuelve un valor numrico redondeado a la
longitud especificada en sus Args en este caso se redonde a 3 decimales.
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #41
DECLARE @Valor float;
SET @Valor = 25.00;
SELECT SQRT(@Valor) [Raz Cuadrada];
--Funcin PI
SELECT PI();
GO
Aqu obtuvimos la raz cuadrada de un valor flotante almacenado en una variable, a travs
de la funcin SQRT. Se muestra el valor de la funcin PI, la cual, en s, solo contiene el
valor de la constante matemtica PI y puede ser utilizada en diversas operaciones.
Caso #42
-- Funcin SQUARE
DECLARE @Altura float, @Radio float;
SET @Altura = 5;
SET @Radio = 1;
SELECT PI()* SQUARE(@Radio)* @Altura AS [Volumen del Cilindro];
GO
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Caso #43
--Funcin SIGN
DECLARE @Valor1 real
DECLARE @Valor2 real
DECLARE @Valor3 real
SET @Valor1 = -1
SET @Valor2 = 0
SET @Valor3 = +1
SELECT SIGN(@Valor1) AS[Valor Negativo]
SELECT SIGN(@Valor2) AS[Valor Cero]
SELECT SIGN(@Valor3) AS[Valor Positivo]
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Utilizando la funcin SING podemos detectar el signo positivo (+1), cero (0) o negativo
(-1) de la expresin especificada en los argumentos de la funcin, para este caso los
valores establecidos en las variables.
Caso #44
--Funcin ABS
SELECT ABS(-1.0), ABS(0.0), ABS(1.0);
Caso #45
--Funcin EXP
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
DECLARE @Valor float
SET @Valor = 10
SELECT 'El valor exponencial de la Variable es: ' + CONVERT(varchar,EXP(@Valor))
GO
Para este caso, mediante la funcin EXP obtenemos el valor exponencial del valor
establecido en la variable, el cual, al ser impreso, es convertido a travs de la funcin
CONVERT de un valor flotante a cadena.
----------------------------------------------------------------------------------------------------------
7. Funciones para el Manejo del Tipo de Datos Fecha y Hora
Ejecute el siguiente cdigo SQL y explique su comportamiento.
----------------------------------------------------------------------------------------------------------
Caso #46
-- Funcin GETDATE
SELECT GETDATE()[Fecha y Hora del Sistema]
La primera consulta muestra a travs de la funcin GETDATE la fecha y hora del sistema.
Y, la segunda consulta convierte el resultado de la funcin, obteniendo solo la fecha, mas
no la hora.
Caso #47
-- Funcin DAY
SELECT DAY('2014/09/19');
SELECT DAY('19/09/2014');
SELECT DAY(GETDATE())
La funcin DAY devuelve un entero que representa el da del mes de la fecha especificada
en sus argumentos, independientemente de la estructura con la que se construya dicha
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
fecha, siempre y cuando sea correcta, es permitida. Para el caso ambas fechas son 19, a
diferencia de la ltima que hace referencia a la fecha en la cual estoy preparando este
informe, hoy 23 de agosto del 2016.
Caso #48
-- Funcin MONTH
SELECT MONTH('2014/09/19');
SELECT MONTH('19/09/2014');
SELECT MONTH(GETDATE())
Esta funcin MONTH devuelve el mes de la fecha especificada en sus argumentos, para
los dos primeros ejemplos, independientemente de la estructura de la fecha, reconoce que
pertenece al 9no mes del ao y el ultimo al mes segn la fecha del sistema.
Caso #49
--Funcin YEAR
SELECT YEAR('2014/09/19');
SELECT YEAR('19/09/2014');
SELECT YEAR(GETDATE())
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Esta funcin YEAR realiza la misma operacin que las funciones anteriores DAY,
MONTH. A diferencia que esta, como lo dice su nombre, devuelve el ao, de entre la
fecha especificada en sus argumentos.
Caso #50
--Funcin DATEADD
En este caso, utilizamos la funcin DATEADD que nos permite alterar valores de una
fecha establecida en sus argumentos, junto con las funciones day, month y year, para
especificar la parte de la fecha a modificar y un valor numrico que representara la suma
o lo que se le agregara al valor que este predefinido en la fecha, mediante su parte
seleccionada a ser modificada.
Caso #51
--Funcin DATEPART
SELECT DATEPART(Year, '19/09/2014') [AO]
,DATEPART(Month, '19/09/2014') [Mes]
,DATEPART(Day, '19/09/2014') [Da]
Caso #52
-- Funcin ISDATE
SELECT ISDATE('2014-09-19') [Fecha Vlida = 1 / Fecha Invlida = 0 ]
SELECT ISDATE('2014/09/19') [Fecha Vlida = 1 / Fecha Invlida = 0 ]
SELECT ISDATE('19/09/2014') [Fecha Vlida = 1 / Fecha Invlida= 0 ]
SELECT ISDATE('201409/19') [Fecha Vlida = 1 / Fecha Invlida= 0 ]
SELECT ISDATE('2014/0919') [Fecha Vlida = 1 / Fecha Invlida = 0 ]
GO
Caso #53
--Funcin DATENAME
SELECT DATENAME(year, '19/09/2014') [AO]
,DATENAME(month, '19/09/2014') [Mes]
,DATENAME(weekday, '19/09/2014') [Da]
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
DATENAME, nos devuelve una cadena de caracteres que representara la parte de la fecha
especificada en el parmetro del argumento. Esta funcin presenta cierta similitud con
DATEPART, a diferencia que esta muestra los nombre de los das y meses
correspondientes, mas no en nmeros.
UNIVERSIDAD TECNOLGICA DE PANAM
FACULTAD DE INGENIERA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIN Y SIMULACIN DE SISTEMAS
GUA DE LABORATORIO N. #1
Resultados
A travs de la prctica de todos y cada uno de los diferentes cdigos, empleados en el
lenguaje estructurado de consultas (SQL). Nos ha llevado a obtener resultados muy
provechosos de aprendizajes con respecto a las nuevas consultas que se estuvieron
implementando en nuestra base de datos.
Hemos podido fortalecer y reforzar algunos conocimientos previos y adquirir nuevos
conocimientos o capacidades, algunas desconocidas, pero todas ellas entorno a las bases
de datos y el lenguaje universal de acceso a datos.
Mediante asignaciones como esta, nos lleva a cada uno como estudiantes obtener nuevos
conocimientos y fortalecer los que previamente tenamos de modo que desarrollando
estas asignaciones en las cuales tenemos que aplicar ciertos cdigos y luego redactar lnea
a lnea lo que est sucediendo en los cdigos ejecutados, nos lleva a un aprendizaje
practico de las nuevas estructuras de acceso de datos.