Ejemplos y ejercicios PLSQL

Table of Contents

1 Programación

1.1 Tabla de multiplicar Del 7

7 x 1 = 7
7 x 2 = 14
...

1.2 Tablas de multiplicar del 1 al 9

1.3 Tablas de multiplicar bien alineadas

Los números se tabulan alineándolos a la derecha

7 x  1 =  7
7 x  2 = 14
7 x  3 = 21
7 x  4 = 28
7 x  5 = 35
7 x  6 = 42
7 x  7 = 49
7 x  8 = 56
7 x  9 = 63
7 x 10 = 70

1.4 Nota cualitativa

Haz una función que reciba una nota numérica sobre 10 y devuelva su nota cualitativa. Por ejemplo, para 7.3 es notable.

1.5 Pasar de decimal a binario

1.6 Pasar de decimal a una base entre 2 y 16

1.7 Pasar de una base de 2 a 16 a decimal

1.8 Imprimir los números primos menores de 1000

1.9 Decidir si un número es capicúa

Usa to_char para pasar el número a texto, y utiliza substr para extraer posiciones del texto y compararlas.

1.10 Imprimir los Números primos capicúas menores de 100000

1.11 Decidir si 1000003 es primo

1.12 Convertir boolean a char

Crea una función que reciba un boolean y devuelva 'si' si es true y 'no' si es false.

2 Estudiantes

2.1 Estadística por nombre

Crea un procedimiento que reciba un nombre o apellido, e imprima cuántos alumnos tienen ese nombre o apellido.

2.2 Matricular un hermano

Un hermano comparte todos los datos, excepto el nombre y el tratamiento

2.3 Calcular nota máxima y mínima

Crea un procedimiento con dos parámetros out, que devuelvan la nota mínima y máxima entre las notas parciales (tabla grade)

2.4 Calcular la media de notas por encima de cierto valor

Crea una función que devuelva la media de las notas mayores que un umbral (tabla grade)

2.5 Costes totales de los cursos

Funcion que devuelve la suma de los precios de todos los cursos (table course)

2.6 Insertar un ID automático en un estudiante

Crea un trigger que añada un ID a los estudiantes insertados, en el caso de que no tengan un ID ya asignado. El ID saldrá de una secuencia.

2.7 Actualizar campos de auditoría

Crea triggers que actualicen los campos de auditoría modified_by y modified_date de todas las tablas de la base de datos.

3 Sueldos y masa salarial (desnormalización)

3.1 Tablas de masa salarial

create table sueldos(idempleado, sueldo numeric)
create table masasalarialtotal(total numeric);

3.2 Limitar los sueldos por arriba y por abajo

haz un trigger que asegure que los empleados no cobran menos de 100000€ ni más de 1000000€.

3.3 Inicializar la masa salarial

Crea una tabla masasalarialtotal. Tendrá una sola fila con la suma de todos los sueldos

create table masasalarialtotal( total numeric );

Crea un procedimiento que se asegure que solo hay una fila con la suma de todos los sueldos.

3.4 Actualizar al borrar

Crea un trigger que actualice la masa salarial al borrar un sueldo

3.5 Actualizar al modificar o insertar

Crea un trigger que actualice la masa salarial al modificar o insertar un sueldo

Created: 2020-03-10 mar 13:56

Validate