温馨提示×

NVL函数在Oracle PL/SQL块中的使用

小樊
107
2024-08-28 06:45:41
栏目: 云计算

NVL 函数是 Oracle PL/SQL 中的一个内置函数,用于处理 NULL 值

以下是 NVL 函数的语法:

NVL(expression1, expression2)

其中,expression1 是要检查的表达式,expression2 是如果 expression1 为 NULL 时返回的替代值。

以下是一个简单的示例,说明如何在 PL/SQL 块中使用 NVL 函数:

DECLARE
  v_employee_id NUMBER := 100;
  v_salary NUMBER;
BEGIN
  SELECT salary
    INTO v_salary
    FROM employees
   WHERE employee_id = v_employee_id;

  v_salary := NVL(v_salary, 0);

  DBMS_OUTPUT.PUT_LINE('Employee ' || v_employee_id || ' has a salary of ' || v_salary);
EXCEPTION
  WHEN NO_DATA_FOUND THEN
    DBMS_OUTPUT.PUT_LINE('Employee ' || v_employee_id || ' not found');
END;
/

在这个示例中,我们首先声明了两个变量:v_employee_idv_salary。然后,我们从 employees 表中查询指定员工 ID 的薪水,并将结果存储在 v_salary 变量中。接下来,我们使用 NVL 函数将 v_salary 设置为查询到的薪水或 0(如果查询结果为 NULL)。最后,我们输出员工的薪水。

在这个示例中,如果指定的员工 ID 不存在,那么 v_salary 将保持为 NULL,NVL 函数将其设置为 0。然后,我们输出员工的薪水,即使它是 0。

0