Sei sulla pagina 1di 7

RESUMEN DBA

1. Explique las diferencias entre las funciones INSTR(), REPLACE()


y SUBSTR()
Adicional a lo que realiza cada una, es importante identificar que INSTR
devuelve un tipo de dato NUMBER a diferencia de REPLACE y SUBSTR.
REPLACE slo recibe parmetros de tipo de dato VARCHAR2 mientras que
SUBSTR de tipo VARCHAR2 y NUMBER por la posicin principalmente.
INSTR
Busca una cadena de caracteres dentro de otra. Devuelve la posicin de la
ocurrencia de la cadena buscada.
Su sintaxis es la siguiente:

INSTR(<char>, <search_string>, <startpos>, <occurrence> )

SELECT INSTR('AQUI ES DONDE SE BUSCA', 'BUSCA', 1, 1 )


FROM DUAL;

REPLACE
Reemplaza un texto por otro en un expresion de busqueda.

REPLACE(<expresion>, <busqueda>, <reemplazo>)

El siguiente ejemplo reemplaza la palabra 'HOLA' por 'VAYA' en la cadena 'HOLA


MUNDO'.
SELECT REPLACE ('HOLA MUNDO','HOLA', 'VAYA')-- devuelve VAYA MUNDO
FROM DUAL;

SUBSTR
Obtiene una parte de una expresion, desde una posicin de inicio hasta una
determinada longitud.

SUBSTR(<expresion>, <posicion_ini>, <longitud> )

SELECT SUBSTR('HOLA MUNDO', 6, 5) -- Devuelve MUNDO


FROM DUAL;

2. Explique de manera funcional el uso de la funcin MOD y


presente 2 ejemplos de su uso.
La manera funcional de presentarlo es mediante una divisin. Por ejemplo:
21/4 = 5 cociente y 1 residuo, la funcin MOD devuelve el 1 (residuo)
select mod (11,4) from dual; ------resultado 2;
select mod (10,5) from dual;------resultado 0;
3. Explique por qu es ms eficiente utilizar un tipo de dato DATE en lugar
de un tipo de dato VARCHAR2 en el manejo de fechas.
Porque si las fechas se manejan con el tipo de dato VARCHAR2 pueden
ocasionar errores en la operaciones con fechas. Ejemplo:
Al comparar 2 fechas como DATE
To_date(01/01/2015,dd/mm/rrrr) > To_date(31/12/2014,dd/mm/rrrr)
Es correcta la comparacin, pero si las comparo como VARCHAR2 la
comparacin es errnea porque lo opera como caracteres. Ejemplo:
01/01/2015< 31/12/2014
4. Cul es la diferencia de una funcin que retorna un cursor y una
funcin que recibe como parmetro un cursor. Presente un sustento
a nivel funcional
El sustento funcional debe presentar en un diagrama que explique que una
funcin que retorna un cursor tiene la creacin del cursor dentro de la
funcin y la funcin que recibe como parmetro un cursor ya obtiene un
cursor creado y slo lo navega o lo lee para operarlo retornando otro tipo de
dato.
*Una funcin que retorna un cursor nos da como resultado un objeto en la
cual contiene distintas variables con datos dentro de ellas.
*La funcin que recibe como parmetro un cursor puede utilizar los
parmetros del cursor recibido para realizar consultas con la informacin
que esta tiene.
5. Explique las diferencias entre usar dentro de un query where
2=1,
where 2=2 y where 2=2. Pruebe los siguientes querys:

Query1: select * from employees where 2=1


El resultado del query no muestra registros. No sale error.
*Los datos son del mismo tipo de dato pero no se muestra nada por que la
condicion no es valida (2 no es igual a 1).
Query2: select * from employees where 2=2
El resultado del query muestra tantos registros como registros tiene la tabla
EMPLOYEES.
*es una condicin optima ya que son del mismo tipo de dato y mostrara
todos los registros que tengan en la tabla.
La diferencia entre where 2=1 and where 2=2 es el resultado de la
comparacin si es falso no salen registros y si es verdadero todos los
registros del query o de la tabla segn sea el caso.
Query3: select * from employees where 2=2
*Se est comparando un carcter con un nmero y no es vlido hacer
comparaciones si no son del mismo tipo de datos.
6. Presente 15 ejemplos de 3 TIPOS DE DATOS que conoce en
ORACLE (5 de cada uno).
Los tipos de datos ms sencillos son: NUMBER, VARCHAR2 y DATE
Ejemplos de NUMBER: 1 2 3 4 5
Ejemplos de VARCHAR2 1 2 3 4 5
Ejemplos de DATE:
To_date(19/03/2015,dd/mm/rrrr)
To_date(14/04/2015,dd/mm/rrrr)
To_date(24/07/2015,dd/mm/rrrr)
To_date(01/12/2015,dd/mm/rrrr)
To_date(15/06/2015,dd/mm/rrrr)
7. Presente 3 ejemplos de uso de la funcin TO_DATE, explique la diferencia
con TO_CHAR
To_date(25/12/2015,dd/mm/rrrr)
To_date(2015,rrrr)
To_date(18102015,ddmmrrrr)

La diferencia es que TO_DATE devuelve un tipo de dato DATE y TO_CHAR un


tipo de dato VARCHAR2. Adems, TO_CHAR slo se utiliza para dar un
formato a una fecha o transformar un NUMBER a VARCHAR2. Ejemplo
Select TO_CHAR( To_date(13/05/2015,dd/mm/rrrr),DD-MON-RRRR) from
dual
8. Realice el diagrama o pseudocdigo de una funcin que recibe
como parmetro un cursor
y devuelve un tipo de dato fecha que puede ser la mayor fecha de
contratacin de un grupo
de empleados.
Utilizar el documento de funciones y cursores parte II y represente en un
diagrama o pseudocdigo.
9. Qu funciones de manejo de caracteres se pueden utilizar de una
manera eficiente para representar la inicial de un nombre. Y qu
funcin para el WHERE de un query donde se solicite por ejemplo
los empleados que tengan como inicial la letra B.
Si se utiliza dentro del query junto al SELECT utilice SUBSTR(CAMPO,1,1). Si
se utiliza en el WHERE utilice INSTR(CAMPO,B)=1.
10. Cul es la diferencia en el uso de || y de concat?
El uso de || es ms sencillo para unir ms de 2 cadenas. Ejemplo
Select CADENA1 || CADENA2|| CADENA3 from dual.
11.
Convierte la siguiente cadena 01/04/2015 a la fecha 01 de
Abril del 2015
SELECT TO_CHAR( TO_DATE('01/04/2015','DD/MM/YYYY'),'DD/MONTH/YYYY')
FROM DUAL;
12.

Explique la comparacin where MOD (salary+1000,500)=0 y

presente un monto que cumpla con la comparacin


SELECT MOD (9000+1000,500) FROM DUAL;
13.

Explique el uso de la funcin TO_CHAR en el siguiente query


Select to_char(to_date(13/05/2015,dd/mm/rrrr), dd-mon-rrrr)
from dual
Est convirtiendo de tipo date a char dndole un formato en el cual se
mostrara lo siguiente: 13-mayo-2015

14.
Presente un query ms ptimo que el siguiente y que
presente los mismos resultados

Select * from employees where substr(pone_number,1,1)=5


And to_char (hire_date, dd/mm/rrrr) >= 01/01/2015
And last_name like R%

15. Presente un modelo de base de datos y un diseo funcional


del proceso de elaboracin de un paper .incluye la estructura
del paper en esta pregunta

16. Explique por qu no es eficiente el uso de BETWEEN para un


rango de fechas.
Between: es una palabra reservada y no es muy eficiente; es mejor o
ms ptimo comparar datos del mismo tipo en este caso sera de tipo
date y usar operadores.
EJEMPLO:
Select * from employees
where hire_date >= to_date (01/01/1990 , dd/mm/yyyy)
and hire_date <= to_date(31/12/1990 , dd/mm/yyyy);
17. Realizar un Cuadro Comparativo de la Base de Datos ORACLE
y otras bases de datos que conozca en el mercado. (4 puntos)

ORACLE
Elvado precio
Multiplataforma
Facil uso

Entorno
Cliente/Servidor

Alto rendimiento
de transacciones

POSTGRE SQL
Es gratuito
Multiplataforma
Diseado para
ambiente de alto
volumen
Tiene mayor
soporte que los
proveedores
comerciales
La velocidad de
respuesa es
relativamente

MYSQL
Es gratuito
Multiplataforma
Se instala de
manera sencilla.
No necesita
muchos
requerimientos
del sistema.
Tiene mayor
velocidad al
realizar

lenta.

operaciones.

18. Presente 3 tipos de objetos de base de datos diferentes al


tipo de objeto TABLA.
VISTAS
INDICES
SECUENCIAS
19. Es posible utilizar una funcin MOD en el Select y en el
WHERE de un query?. Explique su respuesta.
Si es posible utilizar MOD en select y where, pero lo ideal es solo usarlo
en el where como una condicin y es usado en casos reales; mientras
que si lo utilizamos con el select solo se podra usar para ejemplos
bsicos de cmo usar la funcin MOD y no se usa en la vida real.
20. Presente un query ms optimo que el siguiente y que
presente los mismos resultados: (4 puntos)
Select * from employees
where phone_number like '5%'
and to_char(hire_date,'rrrr')='1990'
and last_name is null;
21. Realice el diagrama o pseudocodigo de una funcin que
recibe 2 parmetros, uno de tipo de dato DATE y otro de tipo de
dato VARCHAR2 y que devuelve un cursor con la estructura del
query de la pregunta II. (6 puntos)
22. Realice el diagrama funcional del proceso que realiz para
buscar papers en internet para el trabajo del curso. (4 puntos)
ANEXO

Potrebbero piacerti anche