Bases de Datos

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 15

 

SEMANA 6 

  BASES DE DATOS 
 

 
Lea esto primero. UNIACC,  semana 6 

FUNCIONES DE BIBLIOTECA DEL LENGUAJE SQL

INTRODUCCION

El lenguaje SQL permite la recuperación de un conjunto de registros de la base de


datos en la que se relacionan datos almacenados en diferentes tablas del Modelo de
Datos Relacional, sin embargo en la mayoría de los casos la recuperación de los datos
son necesarias para entregar información que apoye el proceso de toma de decisiones de
una empresa. Por este motivo, se requiere aplicar ciertos cálculos a los datos
recuperados para agregar el valor necesario que apoye el proceso de toma de decisiones.

SQL, provee de un conjunto de funciones que pueden ser aplicadas en la


sentencia SELECT para realizar la recuperación de datos desde la Base de Datos.

Los tipos de funciones son las siguientes:

Fuente: http://msdn.microsoft.com/es-es/library/ms174318.aspx


 
Lea esto primero. UNIACC,  semana 6 

En la siguiente figura se muestra el detalle de los tipos de funciones escalares existentes:

Fuente: http://msdn.microsoft.com/es-es/library/ms174318.aspx

A continuación se revisan en detalle las funciones más utilizadas en el proceso de


recuperación de datos, estas son las de agregación, las matemáticas y las de cadenas.

Los restantes tipos de funciones se relacionan mas con la administración y


configuración de la bases de datos que con la recuperación de los datos almacenados.

1. FUNCIONES DE AGREGACIÓN

Este tipo de funciones operan sobre un conjunto de registros, en un campo específico


de un registro, y retorna un solo valor que representa un cálculo sobre ese conjunto de
datos.

La siguiente figura muestra el conjunto de funciones de agregación disponibles.


 
Lea esto primero. UNIACC,  semana 6 

Fuente: http://www.desarrolloweb.com/articulos/funciones-aritmeticas-sql.html

1.1. Función Promedio ( AVG)


Esta función permite calcular el promedio matemático de un campo de un conjunto de
registritos recuperados.

Se aplica en la clausula SELECT, pero, como es una función de agregación que solo
devolverá un valor, no puede aplicarse en un Select que requiera la recuperación de
múltiples registros.

El siguiente ejemplo muestra el uso de la función AVG:

Suponiendo que se tiene la siguiente tabla:

EMPLEADOS_RIPLEY
RUT
NOMBRE
APELLIDO PATERNO
APELLIDO MATERNO
FECHA INGRESO
SALARIO
TIPO_EMPLEADO
Fuente: Elaboración propia


 
Lea esto primero. UNIACC,  semana 6 

Si se requiere calcular el promedio de sueldos de los vendedores de la tienda, la


sentencia SELECT se aplica como se muestra a continuación.

SELECT AVG (Salario)


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

Sin embargo no sería correcto aplicar la función promedio cuando se desea


recuperar múltiples registros como se muestra en el siguiente SELECT de ejemplo.

SELECT AVG (Salario), RUT, NOMBRE, APELLIDO PATERNO, FECHA DE INGRESO


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

Dado que el SELECT RUT, NOMBRE, APELLIDO PATERNO, FECHA DE


INGRESO retornara una lista de todos los empleados que son vendedores de la tienda
Ripley, y la función promedio solo retornaría un valor, por este motivo la sentencia
SELECT anterior dará ERROR.

1.2. Función Contar ( COUNT)

Esta función permite contar la cantidad de registros retornados en una sentencia


SELECT que cumplen con las condiciones establecidas en la clausula WHERE de la
sentencia.
El siguiente ejemplo muestra el correcto uso de esta función.

SELECT COUNT (RUT)


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia


 
Lea esto primero. UNIACC,  semana 6 

El resultado de esta sentencia SELECT será la cantidad de empleados de la tienda


Ripley que son VENDEDORES.

Al igual que en el caso anterior no es correcto utilizar esta función cuando se


recuperan múltiples registros, la sentencia mostrada a continuación arrojaría un ERROR.

SELECT COUNT (RUT), NOMBRE, APELLIDO PATERNO, FECHA DE INGRESO


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

1.3. Función MAXIMO ( MAX)

Esta función permite encontrar el valor máximo de un determinado campo de un


conjunto de registros que son seleccionados de acuerdo a la condición definida en la
clausula WHERE de la sentencia SELECT.
El siguiente ejemplo muestra el correcto uso de esta función.

SELECT MAX (Salario)


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

El resultado de esta sentencia SELECT será la el sueldo mas alto que posee un
VENDEDOR de la tienda Ripley.

Al igual que en el caso anterior no es correcto utilizar esta función cuando se


recuperan múltiples registros, la sentencia mostrada a continuación arrojaría un ERROR.

SELECT MAX (Salario), NOMBRE, APELLIDO PATERNO, FECHA DE INGRESO


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia


 
Lea esto primero. UNIACC,  semana 6 

1.4. Función MINIMO ( MIN)

Esta función permite encontrar el valor mínimo de un determinado campo de un


conjunto de registros que son seleccionados de acuerdo a la condición definida en la
clausula WHERE de la sentencia SELECT.
El siguiente ejemplo muestra el correcto uso de esta función.

SELECT MIN (Salario)


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

El resultado de esta sentencia SELECT será la del sueldo más bajo que posee un
VENDEDOR de la tienda Ripley.

Al igual que en el caso anterior no es correcto utilizar esta función cuando se


recuperan múltiples registros, la sentencia mostrada a continuación arrojaría un ERROR.

SELECT MIN (Salario), NOMBRE, APELLIDO PATERNO, FECHA DE INGRESO


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

1.5. Función SUMA( SUM)

Esta función permite sumar los valores almacenados en un determinado campo de un


conjunto de registros que son seleccionados de acuerdo a la condición definida en la
clausula WHERE de la sentencia SELECT.
El siguiente ejemplo muestra el correcto uso de esta función.

SELECT SUM (Salario)


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia


 
Lea esto primero. UNIACC,  semana 6 

El resultado de esta sentencia SELECT será la suma de todos los sueldos de los
VENDEDORES de la tienda Ripley.

Al igual que en el caso anterior no es correcto utilizar esta función cuando se


recuperan múltiples registros, la sentencia mostrada a continuación arrojaría un ERROR.

SELECT SUM (Salario), NOMBRE, APELLIDO PATERNO, FECHA DE INGRESO


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

1.6. Función VARIANZA( VARIANCE)

Esta función permite calcular la varianza existente en un conjunto de valores


almacenados en un determinado campo de un conjunto de registros que son
seleccionados de acuerdo a la condición definida en la clausula WHERE de la sentencia
SELECT.
El siguiente ejemplo muestra el correcto uso de esta función.

SELECT VARIANCE (Salario)


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

El resultado de esta sentencia SELECT será la varianza existente en los sueldos


de los VENDEDORES de la tienda Ripley.

Al igual que en el caso anterior no es correcto utilizar esta función cuando se


recuperan múltiples registros, la sentencia mostrada a continuación arrojaría un ERROR.


 
Lea esto primero. UNIACC,  semana 6 

SELECT VARIANCE (Salario), NOMBRE, APELLIDO PATERNO, FECHA DE INGRESO


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

Las funciones de agregación en general a excepción de COUNT constituyen


cálculos matemáticos, por lo tanto solo pueden ser aplicadas en campos de tablas que
estén definidos como tipos numéricos.

2. Funciones Matemáticas
La siguiente figura muestra la lista de las funciones matemáticas que provee SQL.

FUNCION SIGNIFICADO VALOR DE RETORNO


ABS : Valor Absoluto DEGREES : Retorna el numero RAND: Retorna un valor real entre 0
de grados de un ángulo y 1, ambos extremos incluidos.
ACOS : arco coseno EXP : Valor exponencial ROUND : Retorna un valor numérico
redondeado
ASIN : arco seno FLOOR : Retorna el entero más SIGN: Retorna el signo de una
grande que sea menor o igual expresión, los valores especifico de
que la expresión numérica retorno son, positivo (+1), cero (0) o
especificada negativo (-1) de la expresión
especificada.
ATAN: arco tangente. LOG : Logaritmo SIN : SENO
ATN2: Retorna el ángulo formado LOG10 : Logaritmo en base 10 SQRT : Raíz cuadrada
por el eje X positivo y la línea que
se extiende desde el origen al
punto (y, x).
CEILING: Devuelve el entero más PI : Valor de la constante PI SQUARE : Retorna el cuadrado de
pequeño mayor o igual que la un valor
expresión numérica especificada.
COS : Coseno POWER: Devuelve el valor de la
expresión especificada elevada
a la potencia indicada.
COT : Cotangente TAN : Tangente


 
Lea esto primero. UNIACC,  semana 6 

A continuación se detallan y ejemplifican las funciones matemáticas más utilizadas.

2.1. Función Valor Absoluto ( ABS)

Esta función retorna el valor absoluto de una expresión. Generalmente se utiliza sobre
una función de agregación, dado que se requiere un solo valor donde aplicarla, entonces
en el caso de recuperación de datos, primero se obtiene el número y luego se aplica el
valor absoluto.
El siguiente ejemplo muestra la aplicación de esta función.

SELECT ABS (SUM (Salario))


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

El resultado de esta sentencia SELECT será el valor absoluto de la suma de todos los
sueldos de los VENDEDORES de la tienda Ripley.

2.2. Función Raíz cuadrada ( SQRT)

Esta función retorna la raíz cuadrada de una expresión. Generalmente se utiliza sobre
una función de agregación, dado que se requiere un solo valor donde aplicarla, entonces
en el caso de recuperación de datos, primero se obtiene el número y luego se aplica la
raíz cuadrada.
El siguiente ejemplo muestra la aplicación de esta función.

SELECT SQRT (SUM (Salario))


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia


 
Lea esto primero. UNIACC,  semana 6 

El resultado de esta sentencia SELECT será la raíz cuadrada de la suma de todos los
sueldos de los VENDEDORES de la tienda Ripley.

2.3. Función Cuadrado ( SQUARE)

Esta función retorna el cuadrado de una expresión. Generalmente se utiliza sobre una
función de agregación, dado que se requiere un solo valor donde aplicarla, entonces en el
caso de recuperación de datos, primero se obtiene el número y luego se aplica la raíz
cuadrada.

El siguiente ejemplo muestra la aplicación de esta función.

SELECT SQUARE (SUM (Salario))


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

El resultado de esta sentencia SELECT será el cuadrado de la suma de todos los


sueldos de los VENDEDORES de la tienda Ripley.

2.4. Función REDONDEA( ROUND)

Esta función retorna el valor redondeado de una expresión. Generalmente se utiliza


sobre una función de agregación, dado que se requiere un solo valor donde aplicarla,
entonces en el caso de recuperación de datos, primero se obtiene el número y luego se
aplica la función ROUND. Para que tenga un efecto visible esta función debe aplicarse en
campos del tipo REAL.

La sintaxis de esta función es la siguiente:

10 
 
Lea esto primero. UNIACC,  semana 6 

ROUND ( numeric_expression , length [ ,función ] )

El siguiente ejemplo muestra la aplicación de esta función.

SELECT ROUND (SUM (Salario), 3)


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

El resultado de esta sentencia SELECT será el valor de la suma de todos los sueldos
de los VENDEDORES de la tienda Ripley, redondeado.

3. Funciones de Cadenas

Las funciones de cadena son aquellas que se aplican a cadenas de caracteres.


Dependiendo de la función el valor de retorno puede ser una cadena o un valor
numérico.

La siguiente tabla muestra la lista de funciones de cadena existentes.

ASCII NCHAR SOUNDEX

CHAR PATINDEX SPACE


CHARINDEX QUOTENAME STR
DIFFERENCE REPLACE STUFF
LEFT REPLICATE SUBSTRING
LEN REVERSE UNICODE
LOWER RIGHT UPPER
LTRIM RTRIM

A continuación se detallan las funciones de cadena mas comúnmente utilizadas en la


recuperación de datos.

11 
 
Lea esto primero. UNIACC,  semana 6 

3.1. Función Convierte a minúsculas( LOWER)

Convierte las mayúsculas en minúsculas de una expresión de caracteres y retorna la


nueva expresión en minúsculas

El siguiente ejemplo muestra la aplicación de esta función.

SELECT LOWER (Nombre), RUT


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

El resultado de esta sentencia SELECT será el nombre de los vendedores en letras


minúsculas y el Rut de todos los vendedores de la tienda Ripley.

3.2. Función Convierte a mayúsculas( UPPER)

Convierte las minúsculas en mayúsculas de una expresión de caracteres y retorna la


nueva expresión en mayúscula
El siguiente ejemplo muestra la aplicación de esta función.

SELECT UPPER (Nombre), RUT


FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

El resultado de esta sentencia SELECT será el nombre de los vendedores en letras


mayúsculas y el Rut de todos los vendedores de la tienda Ripley.

12 
 
Lea esto primero. UNIACC,  semana 6 

3.3. Función Convierte a mayúsculas( UPPER)


Retorna una parte de una expresión de caracteres, binaria, de texto.
La sintaxis de esta función es la siguiente:

SUBSTRING ( value_expression , start_expression , length_expression )

El siguiente ejemplo muestra la aplicación de esta función.

SELECT SUBSTRING(Nombre, 1, 15),


RUT
FROM Empleados_Ripley
WHERE tipo_empleado = “vendedor”
Fuente: Elaboración propia

El resultado de esta sentencia SELECT corresponderá a los primeros 15 caracteres


del nombre y el Rut de todos los vendedores de la tienda Ripley.

CONCLUSION

Como se ha examinado, la recuperación de datos desde una Base de Datos


requiere aplicar por lo general ciertos cálculos a los datos, para agregar el valor necesario
que apoye el proceso de toma de decisiones.

SQL, provee de un conjunto de funciones que pueden ser aplicadas en la


sentencia SELECT para realizar la recuperación de datos desde la Base de Datos.

Es necesario considerar las restricciones que posee cada función al momento de


incorporarlas en una determinada Sentencia SELECT, ya que como se ha revisado,
algunas funciones solo son aplicables a ciertos tipos de datos, ya sean estos numéricos o
de caracteres, de fecha, etc.

También es necesario considerar sobre todo en las funciones de agregación que


estas no deben ir en una sentencia que recupere múltiples registros de la Base de Datos.

13 
 
Lea esto primero. UNIACC,  semana 6 

BIBLIOGRAFÍA

• García, A. (2004) Manual práctico de SQL. Recuperado el 05 de mayo de 2011 de,

http://www.cepeu.edu.py/LIBROS_ELECTRONICOS_4/ManualPracticoSQL.pdf

• Casares. C (2002),Tutorial de SQL, recuperado el 29 de mayo de 2011 de,

http://www.asptutor.com/zip/sql.pdf

• Biblioteca MSDN, recuperado el 5 de mayo de 2011 de, http://msdn.microsoft.com/es-

es/library/ms174318.aspx

14 
 

También podría gustarte