DP 4 1 Practice Esp

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

Programación de Bases de Datos con SQL

4-1: Manipulación de Mayúsculas/Minúsculas y de Caracteres


Actividades de Práctica

Objetivos
• Seleccionar y aplicar funciones de una sola fila que realicen conversión de
mayúsculas/minúsculas y/o la manipulación de caracteres
• Seleccionar y aplicar las funciones de manipulación de mayúsculas/minúsculas de caracteres
LOWER, UPPER e INTCAP en una consulta SQL
• Seleccionar y aplicar las funciones de manipulación de caracteres CONCAT, SUBSTR,
LENGTH, INSTR, LPAD, RPAD, TRIM y REPLACE en una consulta SQL
• Escribir consultas flexibles usando variables de sustitución

Terminología
Identifique el término para cada una de las siguientes definiciones.

Tabla ficticia que se utiliza para ver los resultados de las


Dual funciones y los cálculos

Organización de los datos para su almacenamiento o


Formato
presentación

INITCAP Convierte los valores de carácter alfabético a mayúsculas para la


primera letra de cada palabra; el resto permanece en minúsculas
Funcion de carácteres Funciones que aceptan datos de caracteres como entrada y que
pueden devolver valores numéricos y de carácter
TRIM
Elimina todos los caracteres especificados, ya sea del principio o
del final de una cadena
EXPRESIÓN
Símbolo que representa una cantidad o una relación entre
cantidades
FUNCION DE FILA ÚNICA
Funciones que operan solo en filas únicas y que devuelven un
resultado por fila
UPPER Convierte caracteres alfabéticos en mayúsculas

INPUT
Datos no procesados introducidos en la computadora

CONCAT Concatena el primer valor de carácter con el segundo valor de


carácter; equivalente al operador de concatenación (||)
OUTPUT
Datos que se procesan en información

Copyright © 2020 Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y sus filiales. Todos los demás nombres pueden ser marcas
comerciales de sus respectivos propietarios.
LOWER Convierte valores de carácter alfabético en minúsculas

Rellena la parte izquierda de un carácter, dando lugar a un valor


LPAD justificado a la derecha

Devuelve caracteres específicos de un valor de carácter


SUBSTR
empezando por una posición de carácter específica hasta una
longitud de posiciones de caracteres determinada
REPLACE Sustituye una secuencia de caracteres de una cadena por otro
juego de caracteres
INSTR Devuelve la posición numérica de una cadena con nombre.

LENGTH Devuelve el número de caracteres en la expresión

RPAD Rellena la parte derecha de un carácter, dando lugar a un valor


justificado a la izquierda

Inténtelo/Resuélvalo
1. Mediante los tres palabras separadas “Oracle”, “Internet” y “Academy”, utilice un comando para
producir la siguiente salida:

The Best Class SELECT CONCAT('Oracle', CONCAT(CONCAT(' ', 'Internet'),


Oracle Internet Academy CONCAT(' ', 'Academy'))) AS "The Best Class"
FROM DUAL;

2. Utilice la cadena “Oracle Internet Academy” para producir la siguiente salida:

The Net SELECT SUBSTR('Oracle Internet Academy', 13, 3) AS "The Net"


FROM DUAL;
net
3. ¿Qué longitud tiene la cadena “Oracle Internet Academy”?
SELECT LENGTH('Oracle Internet Academy') AS "Length"
FROM DUAL;

4. ¿Cuál es la posición de la “I” en “Oracle Internet Academy”?


SELECT INSTR('Oracle Internet Academy', 'I') AS "Position"
FROM DUAL;

Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas
comerciales de sus respectivos propietarios

2
5. A partir de la cadena “Oracle Internet Academy”, rellene la cadena para crear
****Oracle****Internet****Academy****
SELECT REPLACE(RPAD(LPAD('Oracle Internet Academy', 27, '*'),31,'*'),' ', '****') AS "Result"
FROM DUAL;

6. A partir de la cadena “Oracle Internet Academy”, rellene la cadena para producir:


Oracle$$$Internet$$$Academy
SELECT TRIM( BOTH '$' FROM REPLACE(RPAD(LPAD('Oracle Internet Academy', 27, '$'),31,'$'),' ', '$$$$') ) AS "Result"
FROM DUAL;

7. Utilizando la cadena ‘Oracle Internet Academy’, produzca la salida mostrada mediante la función
REPLACE.

The Best Class


Oracle 2013-2014 Academy
SELECT REPLACE('Oracle Internet Academy','Internet', '2013-2014') AS "The Best Class"
FROM DUAL;

8. Cree una lista con la fecha del pedido y el total del pedido de la tabla F_ORDERS de Global Fast
Foods. Asigne al total del pedido el nombre TOTAL y rellene los espacios vacíos a la izquierda
del total del pedido con $.

999999.99 es el campo total del valor máximo que podría tomar , (precisión 8, escala 2). Podría estar por encima de la
pregunta desea limitar la longitud total de impresión a 9 (uno para el punto).

SELECT order_date, LPAD( order_total, 9, '$') as total


FROM f_orders;

9. Escriba una consulta que genere una columna denominada “ADDRESS” con la siguiente
información: ZOE TWEE 1009 OLIVER Avenue BOSTON, MA 12889. Utilice la tabla
F_CUSTOMERS de Global Fast Foods.

SELECT UPPER(first_name || ' ' || last_name || ' ' || address ||' '|| city ||', '|| state ||' '|| zip) as address

FROM f_customers;

10. Escriba una consulta que devuelva el primer carácter del primer nombre concatenado a
last_name, el salario y el identificador de departamento para los empleados que trabajan en el
departamento 20. Proporcione a la primera expresión el alias Name. Utilice la tabla
EMPLOYEES. Cambie la consulta para utilizar una variable de sustitución en lugar del valor
codificado 20 para el ID de departamento. Ejecute la consulta para el departamento 30 y 50 sin
cambiar la cláusula where original en la sentencia.

SELECT CONCAT( SUBSTR(first_name, 1, 1) , last_name) "Name", salary, department_id


FROM employees
WHERE department_id = 20;
SELECT CONCAT( SUBSTR(first_name, 1, 1) , last_name) "Name", salary, department_id
FROM employees
WHERE department_id = :dptid;
11. Mediante una variable de sustitución para el nombre de departamento, escriba una consulta que
muestre el identificador de departamento, el nombre de departamento y el identificador de la
ubicación de los departamentos situados en the_department_of_your_choice. Utilice la tabla
DEPARTMENTS.
Nota: Todas las variables de sustitución de OAE se tratan como cadenas de caracteres, por lo
que no son necesarias las comillas (‘ ‘).

SELECT department_id as "departmentid", department_name as "departmentname", location_id as "location id"


FROM departments
WHERE LOWER(department_name) = LOWER(:the_department_of_your_choice);

12. Escriba una consulta que devuelva todos los datos de los empleados según el mes de su fecha
de contratación. Utilice la tabla EMPLOYEES. La sentencia debe devolver la parte del mes de la
fecha de contratación, la cual se comparará a continuación con un mes abreviado (JAN, FEB,
MAR) que se ha transferido a la consulta a través de una variable de sustitución.

SELECT first_name, last_name, hire_date, TO_CHAR(hire_date, 'MON') as "Month"


FROM employees

WHERE TO_CHAR(hire_date, 'MON') = UPPER(:whichmonth);

Copyright © 2020, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y/o sus filiales. Todos los demás nombres pueden ser marcas
comerciales de sus respectivos propietarios

También podría gustarte