Funcionesescalares

Page 1

Sesiรณn 9

Funciones definidas por el usuario.


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Funciones definidas por el usuario: Son rutinas (código) que aceptan parámetros, realizan una acción, como un cálculo complejo y devuelven el resultado de esa acción como un valor. El valor devuelto puede ser un valor escalar único o un conjunto de resultados (tabla). Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Parámetro: Es un dato que se pasa a la función para que ésta pueda devolver valores de acuerdo al dato que se pasa. SELECT dbo.cuadrado(4) SELECT dbo.cuadrado(5) En este ejemplo, la función se llama “cuadrado” y recibe como parámetro el valor entero 4 y en la siguiente llamada recibe el valor 5. Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Valor escalar: Es un valor simple de un tipo determinado, por ejemplo un número, una fecha o un texto. SELECT dbo.cuadrado(5) Al ejecutar la función anterior, SQL Server devolverá el valor 25, 25 es un valor simple, en este caso numérico. Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Ventajas de usar funciones:

• Permiten una programación modular. Se almacenan en la base de datos y se pueden llamar todas las veces que se requieran.

• Permiten una ejecución más rápida. Una vez que se guarda una función, SQL Server la analiza y optimiza para hacerla eficiente.

• Pueden reducir el tráfico de red. Si se utilizan funciones, el trabajo de cálculo se realiza en el servidor y solo se envian al cliente los datos necesarios. Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Diferencias entre funciones y procedimientos almacenados:

• Las funciones se pueden usar directamente en consultas SQL. SELECT dbo.cuadrado(4)

• Devuelven valores escalares o tablas sin usar parámetros de salida (out).

Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 1: Ahora que ya sabes para que te puede servir una función, escribe 4 usos probables que podrías darles para una base de datos que controla las boletas y calificaciones de un instituto ICO. Compara tu lista con las de tus compañeros.

Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Crea una función

1. Entra a SQL Server 2012 Express. 2. En el explorador de objetos selecciona el servidor y expande el árbol dando clic en el signo de más. 3. Selecciona la base de datos “bd_calificaciones”, expande el árbol > Programación > Funciones > Funciones con valores escalares. 4. Clic derecho sobre “Funciones con valores escalares”. 5. Del menú contextual selecciona “Nueva función con valores escalares.

Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Crea una función - Continuación

6. En el panel derecho se muestra una ventana con la estructura para crear la función.

Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 2: Creación de la función fun_cuadrado. Esta función eleva al cuadrado cualquier número que se le indique.

Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 2: Creación de la función fun_cuadrado.

Si se usa la estructura ya creada, se nos facilita capturar el código de la función

Para guardar la función recién creada se presiona la tecla F5.

Área de Investigación en Computación


INSTITUTO DE COMPUINGLร S DE ORIENTE

Prรกctica 2: Creaciรณn de la funciรณn fun_cuadrado. Al guardar la funciรณn, esta se muestra dentro de los objetos de la base de datos. Presionamos F5 para ejecutar el cรณdigo.

Presionamos el botรณn de Nueva consulta y escribimos el cรณdigo para ver en acciรณn la funciรณn. ร rea de Investigaciรณn en Computaciรณn


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 3: Creación de la función fun_porcentaje_x_carrera. Esta función calcula el porcentaje de alumnos que hay en una carrera.

Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 3: Creación de la función fun_porcentaje_x_carrera.

Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 3: Creación de la función fun_porcentaje_x_carrera. Ejecución de la función, la suma de los porcentajes dan el 100%.

Comprueba manualmente los porcentajes. Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 4: Creación de la funciones fun_promedio_general y fun_diferencia_promedio_general fun_promedio_general calcula el promedio de todas las calificaciones almacenadas en la tabla correspondiente. fun_diferencia_promedio_general calcula la diferencia entre una calificación dada y el promedio general.

Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 4: Creación de la función fun_promedio_general.

Esta función no usa parámetros Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 4: Creación de la función fun_diferencia_promedio_general.

Esta función hace uso de la función: fun_promedio_general. Área de Investigación en Computación


INSTITUTO DE COMPUINGLÉS DE ORIENTE

Práctica 4: Ejecución de las funciones dentro de una consulta.

Consulta para verificar las calificaciones con respecto al promedio general. Área de Investigación en Computación


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.