viernes, 30 de diciembre de 2011

Soluciones ejercicios Tema 4.SQL

EJERCICIOS TEMA4.FUNCIONES SQL.



Ø  A partir de la tabla EMPLE, visualiza cuantos apellidos empieza por la letra ‘A’.
SELECT COUNT (APELLIDO) FROM EMPLE WHERE APELLIDO LIKE 'A%'
/
Obtén el apellido o apellidos de empleados que empiecen por la letra ‘A’ y que tengan máximo salario de los que empiezan por la letra ‘A’.

SELECT APELLIDO FROM EMPLE WHERE APELLIDO LIKE 'A%' AND SALARIO= (SELECT MAX (SALARIO) FROM EMPLE WHERE APELLIDO LIKE ‘A %')
/


1.       Dada la tabla EMPLE, obtén el sueldo medio, el número de comisiones no nulas, el máximo sueldo y el mínimo sueldo de los empleados del departamento 30. Emplea el formato adecuado para la salida para las cantidades numéricas.
SELECT AVG(SALARIO), COUNT(COMISION), MAX(SALARIO), MIN(SALARIO) FROM EMPLE WHERE DEPT_NO= 30;
2.       Visualiza los temas con mayor número de ejemplares de la tabla LIBRERÍA y que tengan, al menos, una ‘E’ (pueden ser un tema o varios).

SELECT TEMA FROM LIBRERIA WHERE EJEMPLARES =(SELECT MAX(EJEMPLARES) FROM LIBRERIA )AND TEMA LIKE ('%E%')
/

3.       Dada la tabla MISTEXTOS, ¿Qué sentencia SELECT se debe ejecutar para tener este resultado?
RESULTADO__________________________________________________________
METODOLOGÍA DE LA PROGRAMACIÓN-^-^-^-^-
INFORMATICA BASICA-^-^-^-^-^-^-^-^-^-
SISTEMAS OPERATIVOS-^-^-^-^-^-^-^-^-^-
SISTEMAS DIGITALES-^-^-^-^-^-^-^-^-^-
MANUAL  DE C-^-^-^-^-^-^-^-^-^-^-^-^-^-

SELECT RPAD (LTRIM (RTRIM (TITULO,'-','^'), ‘‘) 45,'-1') FROM MIS TEXTOS
/

4.       Visualiza los títulos de la tabla MISTEXTOS sin los caracteres punto y comillas, y en minúsculas de dos formas conocidas.
SELECT LOWER (LTRIM(RTRIM(TITULO,'.'''''),''''))FROM MISTEXTOS
/
5.       Dada la tabla LIBROS, escribe la sentencia SELECT que visualice dos columnas, una con el autor y otra con el apellido del autor.

SELECT AUTOR, SUBSTR (AUTOR,0,INSTR(AUTOR, '.' , 1)-1)FROM LIBROS
/
6.       Escribe la sentencia select que visualice las columnas de autor y otra con el nombre del autor (sin el apellido, tabla LIBROS).

SELECT AUTOR,SUBSTR(AUTOR,0,INSTR(AUTOR,'.',1)+1)FROM LIBROS
/
7.       A partir de la tabla LIBROS, realice una sentencia select que visualice en una columna, primero el nombre del autor y luego su apellido.

SELECT SUBSTR(AUTOR,INSTR(AUTOR,',',1)+1),SUBSTR(AUTOR,0,INSTR(AUTOR,',',1)-1 ) FROM LIBROS
/

8.       A partir de la tabla LIBROS, realiza una sentencia select para que aparezcan los títulos ordenados por su número de caracteres.

SELECT TITULO FROM LIBROS ORDER BY LENGTH (TITULO)

9.       Dada la tabla NACIMIENTOS, realiza una sentencia select que obtenga la siguiente salida: NOMBRE,FECHANAC,FECHA_FORMATEADA, donde FECHA_FORMATEADA tiene el siguiente formato:
“Nació el 12 de mayo de 1982”

SELECT NOMBRE,FECHANAC,TO_CHAR(FECHANAC,'"NACIO EL "dd" DE "month" DE "yyyy"')FROM NACIMIENTOS
/

10.   Dada la tabla LIBRERÍA, haz una sentencia SELECT que visualice el TEMA, el ultimo carácter del tema que no sea blanco y el numero de caracteres de tema (sin contar los blancos de la derecha) ordenados por tema.
SELECT TEMA,SUBSTR(TEMA,INSTR(TEMA,' ')-1),INSTR(TEMA,' ')-1 FROM LIBRERIA ORDER BY TEMA
/
11.   A partir de la tabla NACIMIENTOS, visualiza en una columna el NOMBRE seguido de su fecha de nacimiento formateada(quita blancos del nombre)

SELECT NOMBRE,TO_CHAR(FECHANAC,'"NACIO EL,"DD" "MONTH" "YYYY"')FROM NACIMIENTOS
/

12.   Convierte la cadena ‘010721’a fecha y visualiza su nombre de mes en mayúsculas.
SELECT TO_CHAR (TO_DATE ('010712','DDMMYY'),'MONTH') FROM DUAL
/
13.   NO HAY QUE HACERLO

14.   A partir de la tabla EMPLE, obtén el apellido de los empleados que lleven más de 15 años trabajando.
SELECT APELLIDO FROM EMPLE WHERE SYSDATE-TO_NUMBER(TO_CHAR (FECHA_ALT,'YYYY'))>15
/
15.   Selecciona el apellido de los empleados de la tabla EMPLE que lleven más de 16 años trabajando en el departamento VENTAS.

SELECT APELLIDO FROM EMPLE WHERE MONTHS_BETWEEN (FECHA_ALT, SYSDATE)>16*15 AND DEPT_NO= (SELECT DEPT_NO FROM DEPART WHERE DNOMBRE='VENTAS')
/
Ø 

No hay comentarios:

Publicar un comentario