Este documento explica cómo crear funciones definidas por el usuario en SQL. Detalla los pasos para crear funciones que reciben parámetros y retornan valores, incluyendo ejemplos de funciones que multiplican números, obtienen precios de productos, y más. También incluye actividades para que el lector cree sus propias funciones en la base de datos Neptuno.
Esquema sobre el funcionamiento general de Scilab, se indican formas de entrada, operaciones básicas de procesamiento y formatos generales para los datos de salida.
Esquema sobre el funcionamiento general de Scilab, se indican formas de entrada, operaciones básicas de procesamiento y formatos generales para los datos de salida.
J'art Visual es un grupo de consultoría multidisciplinario enfocado en soluciones de diseño centradas en los clientes y en ofrecer herramientas que incrementen el negocio de los mismos y sus objetivos de mercadeo. Ofrecemos diseños de locales, decoración, diseño de stand, servicios de visual merchandising, comunicacion grafica y capacitación del personal en departamentos de imagen. A su vez trabajamos en conjunto con una empresa de desarrollo arquitectónico para brindar un servicio integral.
J'art Visual is a multidisciplinary retail consulting firm focused on providing customer centric design solutions and tools that articulate the retailers business and marketing objectives. We offer store designs, decoration, stand design, visual merchandising services, graphic communication and staff training in visual departments. We work together with an architectural development company for providing an all-round service.
Por medio de este informe se indaga y se aprende un poco más de esta herramienta popular en temas de programaciones.
Esperamos les agrade, les interese y utilicen esta herramienta tan útil en la actualidad.
1. CENTRO DE GESTION DE MERCADOS LOGISTICA Y TECNOLOGIAS DE LA INFORMACION
ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACION
Fecha:
Abril/2013
TALLER DE FUNCIONES DEFINIDAS POR EL USUARIO
Las funciones son objetos que permiten realizar cálculos, no necesariamente reciben
parámetros pero siempre retornan valores de tipo numero (float, int, money, etc).
Las funciones obligatoriamente deben tener los paréntesis en los cuales se agregan los
parámetros que recibe, aunque no reciba ninguno.
1. Vamos a crear una funcion que multiplique dos números, utilicen cualquier base
de datos.
create function multi – utilizamos el comando create para crear el objeto funcion y le
damos el nombre
(@num1 float, @num2 float) returns float -- entre parentesis van las variable que recibe la
funcion y enseguida la instrucción Returns con el tipo de dato que se retornará. Es
importante tener en cuenta que una función siempre debe retornar algún valor.
as -- iniciamos la sentencia
begin -- la sentencia se debe incluir entre un bloque Begin End
declare @multi float -- declaramos la variable que vamos a retornar
select @multi = (@num1 * @num2)-- hacemos la sentencia que riquiere la funcion
return @multi -- retornamos la variable
end -- fin de la instruccion
/*ahora vamos a usar la funcion*/
select dbo.multi (20,4)
-- la sentencia con comando select, el nombre de la funcion y entre parentesis los valores
que recibe la funcion
La sentencia anterior es la forma completa; sin embargo, también puede ser creada
así:
create function multiplica
(@num1 float, @num2 float) returns float
as
Elaborado por: Instructora Sandra Yanneth Rueda Guevara
SENA - Área de Teleinformática
Referencia de material de apoyo diseñado por Ing Yaqueline Chavarro
2. CENTRO DE GESTION DE MERCADOS LOGISTICA Y TECNOLOGIAS DE LA INFORMACION
ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACION
Fecha:
Abril/2013
begin
return (select (@num1 * @num2))
end
No se declara una variable que reciba el valor que se retorna, porque directamente se
asigna la sentencia al return, También, recordemos que la sentencia puede consultar
tablas, aunque en los dos ejemplos anteriores no consulta ninguna tabla si requiere la
selección. En el siguiente ejemplo utilizamos una tabla de la base de datos Neptuno.
2. Función que recibe el nombre de un producto y retorna el precio unitario, utilice
la base de datos Neptuno.
CREATE FUNCTION PrecioProducto
(@nom nvarchar(40)) RETURNS money
AS
BEGIN
RETURN (select PrecioUnidad
from Productos
where NombreProducto = @nom)
END
UTILICEMOS LA FUNCION CREADA.
select NombreProducto, UnidadesEnExistencia
from Productos
where dbo.PrecioProducto(NombreProducto)> 15
En este ejemplo hacemos que el valor retornado por la funcion sea condicionado;
entonces, el resultado de una funcion creada por el usuario puede ser mostrado y/o
condicionado.
ACTIVIDAD
En la base de datos Neptuno:
1. Cree una función para obtener porcentajes en general.
2. Cree una función para hallar área, tenga en cuenta que de acuerdo con la
necesidad, hay una fórmula.
3. Cree una sentencia en la cual utilice las funciones del punto 1 y 2 y muestre los
dos valores que retornan en el mismo SELECT, asígnele a cada columna
mostrada un alias.
4. Cree una función que reciba el nombre del cliente y un año, y retorne cuanto ha
pagado en total en ese año.
5. Cree una función que retorne el total vendido. Tenga en cuenta que esta función
no recibe parámetros; pero sin embargo, debe agregar los paréntesis vacíos
después del nombre de la función tanto cuando la crea como cuando la usa.
6. Cree una función para obtener el total vendido por un empleado. Determine qué
variables requiere.
Elaborado por: Instructora Sandra Yanneth Rueda Guevara
SENA - Área de Teleinformática
Referencia de material de apoyo diseñado por Ing Yaqueline Chavarro
3. CENTRO DE GESTION DE MERCADOS LOGISTICA Y TECNOLOGIAS DE LA INFORMACION
ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACION
Fecha:
Abril/2013
7. Cree una función que permita obtener el porcentaje de ventas de cada empleado,
con respecto al total vendido; como ya tiene creadas dos funciones que hacen
tareas que requiere en esta función, revise si es necesario hacer ajustes y
utilícelas.
Asegúrese de haber creado una sentencia en la que utilice cada función creada.
Elaborado por: Instructora Sandra Yanneth Rueda Guevara
SENA - Área de Teleinformática
Referencia de material de apoyo diseñado por Ing Yaqueline Chavarro