ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Practica1_EvaluarFunciones

ZaikFritTarea26 de Abril de 2017

1.126 Palabras (5 Páginas)199 Visitas

Página 1 de 5

FUNCIONES SIMPLES

Funciones aritméticas

ABS(n) → Muestra el valor absoluto del campos

SELECT ABS(salario-5000)

FROM Emple

WHERE Apellido = ‘GIL’;

ABS(salario-5000)

2000

CEIL(n) →Muestra el valor entero inmediatamente superior

SELECT CEIL(salario/7)

FROM Emple;

WHERE Apellido = ‘GIL’

CEIL(salario/7)

429

FLOOR(n) →Muestra el valor entero inmediatamente inferior

SELECT FLOOR(salario/7)

FROM Emple;

WHERE Apellido = ‘GIL’

FLOOR(salario/7)

428

MOD(m,n)→Muestra el resto de dividir m entre n

SELECT MOD(salario,7)

FROM Emple;

WHERE Apellido = ‘GIL’

MOD(Salario,7)

4

NVL(Campo,expresion) →Sustituye un valor nulo por la expresión, si el campo no es nulo no

SELECT Apellido,NVL(Comision,0)

FROM Emple;

APELLIDO

COMISION

SANCHEZ

0

ARROYO

390

SALA

650

JIMENEZ

0

MARTIN

1020

NEGRO

0

CEREZO

0

TOVAR

0

ALONSO

0

JIMENO

0

POWER(m,exponente)→ Calcula el valor m elevado a la potencia del exponente.

SELECT POWER(Comision,2)

FROM Emple

WHERE Apellido=’SALA’;

POWER(Comision,2)

422500

SQRT(n)→ Calcula la raiz cuadrada

SELECT SQRT(Comision)

FROM Emple

WHERE Apellido=’SALA’;

SQRT(Comision)

25,49

SIGN(n)→ Indica el signo de n, muestra 1 si es positivo y -1 si es negativo

SELECT SIGN(Comision)

FROM Emple

WHERE Apellido=’SALA’;

SIGN(Comision)

1

CONCAT(cad1,cad2) → Concatena las dos cadenas

SELECT CONCAT(‘Hola ‘,’Apellido)

FROM Emple

WHERE Apellido=’SALA’;

CONCAT(‘Hola’,Apellido)

Hola SALA

LOWER(cad)→ Devuelve la cadena en minúsculas

SELECT LOWER(Apellido)

FROM Emple

WHERE Apellido=’SALA’;

LOWER(Apellido)

sala

UPPER(cad)→ Devuelve la cadena en mayúsculas

SELECT UPPER(Apellido)

FROM Emple

WHERE Apellido=’SALA’;

UPPER(Apellido)

SALA

FUNCIONES DE GRUPO

Las funciones de grupo son aquellas funciones que extraen información de un conjunto de filas vistas como grupos y no como elementos individuales.

Son:

SUM (campo) →        Suma los valores de una columna de varias filas.

AVG(campo) →        Calcula la media aritmética de los valores no nulos

MIN(campo) →        Devuelve el valor más pequeño de las filas seleccionadas.

MAX (campo)→        Devuelve el valor más grande de las filas seleccionadas.

COUNT(*/campo) →        Cuenta el número de valores no nulos.

VARIANCE(campo) →Calcula la varianza.

SELECT SUM(Comision) FROM Emple;

SUM(Comision)

2060

Suma todas las comisiones de la tabla. 390+650+1020=1060

SELECT AVG(Comision) FROM Emple;

AVG(Comision)

686,67

Calcula la media de los valores no nulos: (390+650+1020)/3

SELECT MIN(Comision) FROM Emple;

MIN(Comision)

390

SELECT MAX(Comision) FROM Emple;

MAX(Comision)

1020

SELECT COUNT(Comision) FROM Emple;

COUNT(Comision)

3


Cuenta el número de valores no nulos que hay en ese campo, en todas las filas.

SELECT COUNT(*) FROM Emple;

COUNT(*)

14


Cuenta el número total de filas de la tabla.

COUNT es la única función de estas que acepta el *, pues las demás por su naturaleza precisan aplicarse sobre un campo determinado, no pueden aplicarse sobre un conjunto de campos a la vez.

Puede combinarse con la cláusula WHERE:

Cuenta el número de empleados con oficio Analista:

SELECT COUNT(*) FROM Emple WHERE Oficio=’ANALISTA’

COUNT(*)

2

SELECT MAX(Salario) FROM Emple WHERE Dept_No=20;

MAX(Salario)

3000

Las funciones de grupo también pueden obtener información de un conjunto de filas tomadas como conjunto inseparable, perdiendo la información individual, para ello se agrupan con la cláusula GROUP BY.

Para mostrar el salario más alto de cada departamento, lo que hacemos mentalmente, agrupar las filas por departamentos, y buscar entre cada departamento el salario más alto, esto mismo los hace el SQL

SELECT MAX(Salario), Dept_No FROM Emple GROUP BY Dept_No;

La tabla original , con los del departamento 10 en azul, los del 20 en rojo y los del 30 en negro son, y en negrita y con tamaño 14 los máximos de cada departamento son.:

SALARIO

DEPT_NO

1040

20

1500

30

1625

30

2900

20

1600

30

3005

30

2885

10

3000

20

4100

10

1350

30

1430

20

1335

30

3000

20

1690

10

 El resultado de la consulata: SELECT MAX(Salario), Dept_No FROM Emple GROUP BY Dept_No;

 será

MAX(SALARIO)

DEPT_NO

3005

30

3000

20

4100

10

Otro ejemplo , contra cuantos empleados hay en cada oficio.

La tabla original es:

EMP_NO

APELLIDO

OFICIO

DIR

FECHA_ALT

SALARIO

COMISION

DEPT_NO

7369

SANCHEZ

EMPLEADO

7902

17-12-1990

1040

0

20

7499

ARROYO

VENDEDOR

7698

20-02-1990

1500

390

30

7521

SALA

VENDEDOR

7698

22-02-1991

1625

650

30

7566

JIMENEZ

DIRECTOR

7839

02-04-1991

2900

20

7654

MARTIN

VENDEDOR

7698

29-09-1991

1600

1020

30

7698

NEGRO

DIRECTOR

7839

01-05-1991

3005

30

7782

CEREZO

DIRECTOR

7839

09-06-1991

2885

10

7788

GIL

ANALISTA

7566

09-11-1991

3000

20

7839

REY

PRESIDENTE

17-11-1991

4100

10

7844

TOVAR

VENDEDOR

7698

08-09-1991

1350

30

7876

ALONSO

EMPLEADO

7788

23-09-1991

1430

20

7900

JIMENO

EMPLEADO

7698

03-12-1991

1335

30

7902

FDEZ

ANALISTA

7566

03-12-1991

3000

20

7934

MUÑOZ

EMPLEADO

7782

23-01-1992

1690

10

Hago los grupos por oficio y les asigno un color:

...

Descargar como (para miembros actualizados) txt (14 Kb) pdf (127 Kb) docx (584 Kb)
Leer 4 páginas más »
Disponible sólo en Clubensayos.com