Saltar al contenido

Como Usar la Cláusula WHERE en los PL-SQL Procedures en Oracle

PL-SQL Procedures en OracleSi aprendes como se debe utilizar la cláusula WHERE en tus PL-SQL Procedures en Oracle podrás realizar filtros mas específicos de los datos que deseas obtener desde tu Base de Datos Oracle.

La cláusula WHERE significa DONDE, es decir, donde los datos deben cumplir ciertas condiciones para ser obtenidos en tus PL-SQL Procedures en Oracle, de esta forma se especifican solo los criterios de búsqueda que necesitas para filtrar un registro o un grupo de registros.

Cada comando de SQL cuenta con la cláusula WHERE, es decir, el WHERE se puede usar en el comando SELECT, UPDATE y DELETE en tus PL-SQL Procedures en Oracle, a excepción del INSERT que no lo necesita.

Revisemos algunos ejemplos prácticos para que puedas entender mejor como se debe utilizar la cláusula WHERE en tus PL-SQL Procedures en Oracle.

Ejemplo #1: Supone que necesitas filtrar solo los empleados de un departamento en particular que cumplan ciertos criterios o condiciones, veamos como se hace:

/* PL-SQL Procedures en Oracle */

Select emp.id_departamento, emp.id_empleado, emp.nombre, emp.direccion, emp.edad

From t_empleado emp;

En este ejemplo se están consultando todos los empleados de la compañía, ya que la consulta SELECT no realiza ningún filtro de los datos obtenidos.

/* PL-SQL Procedures en Oracle */

Select emp.id_departamento, emp.id_empleado, emp.nombre, emp.direccion, emp.edad

From t_empleado emp;

Where emp.id_departamento = 101 and emp.edad > 50;

Ahora al mismo ejemplo anterior se agregó la cláusula WHERE para filtrar solo los empleados del departamento 101 cuya edad sea mayor a 50 años.

Ejemplo #2: Supone ahora que necesitas actualizar y/o borrar datos específicos de los empleados, vemos como se hace:

/* PL-SQL Procedures en Oracle */

Update t_empleado

Set ind_estado = 3; — 3= Vacaciones

Se debe tener mucho cuidado con este ejemplo, ya que se esta dejando el estado ‘Vacaciones’ a todos los empleados de la compañía al no especificar ningún filtro.

/* PL-SQL Procedures en Oracle */

Update t_empleado

Set ind_estado = 3 — 3= Vacaciones

Where id_empleado = 305;

Ahora se agregó al mismo ejemplo anterior la cláusula WHERE para especificar que el estado ‘Vacaciones’ solo se actualice a un solo empleado.

/* PL-SQL Procedures en Oracle */

Delete From t_empleado

Where id_empleado = 1201;

En este otro ejemplo se está borrando el empleado 1201 de la tabla de empleados, si no se especifica la cláusula WHERE estarías borrando todos los empleados de la tabla.

Recomiendo, al menos que se especifique lo contrario, que siempre se incluya la cláusula WHERE en los comandos UPDATE y DELETE en tus PL-SQL Procedures en Oracle, ya que si no lo haces estarías actualizando o borrando todos los registros de una tabla en particular, así te evitarás muchos problemas de gravedad.

Te propongo que pruebes de inmediato estos ejemplos 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 – Para Tu Éxito con Oracle.

Director del Curso “Domina Tus Packages En Oracle

7 comentarios en «Como Usar la Cláusula WHERE en los PL-SQL Procedures en Oracle»

  1. Buen día….mi principal obstáculo es saber como distribuir los diferentes sentencias…o comandos….por ejmplo: cual es el oreden del where , o el or, el set, count,sum,avg,etc,etc…..

    1. Hola Rolando, gracias por comunicarte y por tu comentario, mucha de esa información la puedes encontrar dentro del blog, pero si realmente estas interesado en aprender mas te recomiendo que visites la siguiente página:
      https://dominatuspackagesen0racle.com/detalles/

      PD: Ya obtuviste mi libro-reporte gratuito sobre “Como Construir un SELECT Eficiente en Oracle en Solo 7 Pasos”, si aun no lo tienes puedes obtenerlo desde aquí:
      https://dominatuspackagesen0racle.com/

      Saludos
      Roberto Vicencio – Para Tu Éxito con Oracle.

  2. Me estoy iniciando en el mundo de oracle …se los conceptos…se hacer consultas sencillas pero donde me pierdo un poco es en la distribucióm ….de las consultas…ejem: cuando quiero hacer un conteo no se si poner el COUNT delante o atras del campo a consultar…cosas como esa…quisiera por favor me explique y me alinie para no cometer mas este tipo de errores..

    Saludos y gracias..

    1. Hola Rolando, gracias por comunicarte, para hacer un count puedes hacer algo como lo siguiente:

      select count(*) from t_empleado;

      En esta consulta estas contando todos los empleados de la compañia.

      select count(*) from t_empleado where id_depto=1;

      En esta consulta estas contando todos los empleados del departamento 1.

      select id_depto, count(*) from t_empleado group by id_depto;

      En esta consulta se cuentan la cantidad de empleados de cada departamento de la compañia.

      Espero haber aclarado un poco tus dudas, pero si realmente estas interesado en aprender todo sobre el lenguaje PL-SQL y Packages en Oracle te recomiendo visitar el siguiente enlace:
      https://dominatuspackagesen0racle.com/detalles/

      PD: Te invito a seguir visitando mi blog a estar atento a tu email porque te estaré enviando información que te sea utilidad.

      Saludos
      Roberto Vicencio – Para Tu Éxito con Oracle.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.