PL-SQL Procedures en OracleSi aprendes a crear una Subquery (sub-consulta o sub-búsqueda en español) en tus Select o Consultas en Oracle podrás resolver rápidamente los problemas que encuentres en tus datos cuando trates de obtenerlos y no logres traer la información que deseas para que sea procesada en tus PL-SQL Procedures en Oracle.

Una Subquery básicamente es otra consulta Select pero que se encuentra anidada dentro de un Select principal en tus PL-SQL Procedures en Oracle. Esta Subquery puede ir a nivel de los campos de un Select en tus PL-SQL Procedures en Oracle, se puede especificar como una tabla dentro del From y también se puede incluir dentro de las condiciones del Where en tus PL-SQL Procedures en Oracle. Revisemos algunos ejemplos para que entiendas mejor el uso de una Subquery en tus consultas Select en tus PL-SQL Procedures en Oracle.

Ejemplo #1: Supone que debes mostrar cuantos empleados tiene cada departamento, veamos como se hace con una subquery:

/* PL-SQL Procedures en Oracle */

Select

Dep.codigo_dep,

Dep.nombre_dep,

(select count(1) from t_emplado emp where emp.id_departamento = dep.id_departamento) cant_empleados

From t_departamento dep;

En este ejemplo se crea una Subquery para obtener la cantidad de empleados que tiene cada departamento, fíjate que en los PL-SQL Procedures en Oracle debe estar encerrada entre paréntesis y contener un nombre al final (cant_empleados).

Ejemplo #2: Resolvamos el mismo ejemplo anterior pero usando una subquery en el From, vemos como se hace:

/* PL-SQL Procedures en Oracle */

Select

Dep.codigo_dep,

Dep.nombre_dep,

Cant_emp.cant_empleados

From t_departamento dep,

(     Select emp.id_departamento, count(1) cant_empleados

From t_empleado emp

Group by emp.id_departamento ) cant_emp

Where dep.id_departamento = cant_emp.id_departamento;

En este ejemplo de PL-SQL Procedures en Oracle se crea una subquery en el From como otra tabla para contar los empleados por cada departamento con el nombre Cant_Emp y luego en el Where se une la tabla t_departamento con la subquery cant_emp.

TÚ REPORTE: “Cómo Construir un SELECT Eficiente en ORACLE en Solo 7 Pasos”

¡ Haz Click Aquí y Descárgalo GRATIS Ahora !

Ejemplo #3: Supone que debes mostrar todos los empleados de un departamento en particular, veamos como se hace usando una subquery:

/* PL-SQL Procedures en Oracle */

Select

Emp.codigo_emp,

Emp.nombre_emp,

Emp.edad,

Emp.direccion_emp

From t_empleado emp

Where emp.id_departamento = (      Select dep.id_departamento

From t_departamento dep

Where dep.codigo_dep = pin_codigo_dep )

En este ejemplo de PL-SQL Procedures en Oracle se esta usando una subquery dentro del Where para buscar el id del departamento en la tabla t_departamento y luego este id se une con el id_departamento de la tabla t_empleado.

Te propongo que pruebes de inmediato este ejemplo en tu Base de Datos con tus propias tablas, PL-SQL Procedures en Oracle y PL-SQL Function en Oracle, para que comiences a ejercitar la mano y aprendas a dominar esta nueva técnica en tus PL-SQL Packages en Oracle.

Estoy muy interesado en conocer tu opinión y/o comentario sobre este artículo, también cuéntame sobre qué es lo que quieres saber de PL-SQL Procedures en Oracle y/o dime cuál es tu principal frustración a la hora de trabajar con PL-SQL Procedures en Oracle. Estaré muy atento respondiendo tus preguntas y/o comentarios, gracias.

Saludos

Roberto Vicencio - Escritor del Reporte:

Cómo Construir un SELECT Eficiente en ORACLE en Solo 7 Pasos