Base de Datos

9
Leonardo Suquilanda Dávila S5J 1 EJERCICIO 1. Listar los empleados que ganen más de $900 por año y cuyo apellido este entre la SE y CA. 2. Listar los empleados que nos sean del departamento 20 y 30 ordenados por cargo ascendentemente. 3. Listar los empleados que ganen menos de 100 o más de 800 y cuyo apellido empiece con S o con T.

Transcript of Base de Datos

Page 1: Base de Datos

Leonardo Suquilanda DávilaS5J

1

EJERCICIO

1. Listar los empleados que ganen más de $900 por año y cuyo apellido este entre la SE y CA.

2. Listar los empleados que nos sean del departamento 20 y 30 ordenados por cargo ascendentemente.

3. Listar los empleados que ganen menos de 100 o más de 800 y cuyo apellido empiece con S o con T.

Page 2: Base de Datos

Leonardo Suquilanda DávilaS5J

2

EJERCICIO 1

1. Listado de vendedores cuyo apellido este desde la A hasta la J.

REGEXP_LIKE: Es muy parecido al LIKE pero con la única diferencia que sus búsquedas son mucho más potentes utilizando la expresiones regulares que ha implementado PL\SQL

Sintaxis:

REGEXP_LIKE (<source_string>, <patron>, <match_parameter>)

2. Listado de empleados cuy a primera letra este en la A, C, F, G, P, V y Z

3. Todos los vendedores cuyo último digito de la cédula este entre 1 y 4. (si no existe crearlo).

Page 3: Base de Datos

Leonardo Suquilanda DávilaS5J

3

Nota: En esta consulta no utilizo el campo cédula, si no el campo teléfono porque no tengo este campo en mi tabla vendedores.

4. Muestre el tiempo de vida útil de los activos

Nota: En esta consulta no utilizo el campo vida útil, si no vida_depreciable.

EJERCICIOS 2

1. Muestre el tercer y cuarto digito de la serie para los Equipos de Oficina, Equipos de Computación y Muebles de Oficina.

Page 4: Base de Datos

Leonardo Suquilanda DávilaS5J

4

2. Agregar un campo (char(1)) a la tabla de empleados que indique el estado del mismo. Esto es: A->’Activo’, D->’Despedido’, R->’Retirado’. Y posteriormente liste los empleados con su respectivo estado.

EJERCICIO 31. Muestre el valor del primer mes de depreciación de los vehículos y de los equipos

de computación.

SELECT a.nombreactivo, SUM(d.importedepreciacion), min(d.fechadepreciacion)FROM ACTIVOS a, DEPRECIACION dWHERE (a.idactivo = d.idactivo) and a.nombreactivo = 'Vehiculo'GROUP BY a.nombreactivo

UNION

SELECT a.nombreactivo, SUM(d.importedepreciacion), min(d.fechadepreciacion)FROM ACTIVOS a, DEPRECIACION dWHERE (a.idactivo = d.idactivo) and a.nombreactivo = 'Equipo Computación'

Page 5: Base de Datos

Leonardo Suquilanda DávilaS5J

5

GROUP BY a.nombreactivo

2. Muestre todos los activos cuyo valor de rescate sea cero. En caso de ser nulo muestre “No existe”.

3. Emita un listado de los activos con el respectivo departamento de acuerdo a lo siguiente:

“El activo 1 fue pedido por el departamento de Finanzas y está a cargo de Talía Rubio”

Page 6: Base de Datos

Leonardo Suquilanda DávilaS5J

6

EJERCICIOS

1. Calcular el activo de mayor costo.

ORA:00937: la funcion de grupo no es grupo unico

Este error me apareció en el momento que estaba desarrollando mi Query, se suscitó porque me encontraba utilizando una función agregada (MAX), y añadiendo un campo, lo cual para esto necesito utilizar un GROUP BY a mi campo que necesito que me presente y además debo utilizar un HAVING para mi condición.

Page 7: Base de Datos

Leonardo Suquilanda DávilaS5J

7

2. Calcular cuántos activos fijos están obsoletos

3. Cuál es el promedio de compra de activos de este año

Page 8: Base de Datos

Leonardo Suquilanda DávilaS5J

8

4. Cuál es la computadora más cara

5. Cuál es el carro más barato