溫馨提示×

NVL函數(shù)在Oracle PL/SQL塊中的使用

小樊
96
2024-08-28 06:45:41
欄目: 云計算

NVL 函數(shù)是 Oracle PL/SQL 中的一個內(nèi)置函數(shù),用于處理 NULL 值

以下是 NVL 函數(shù)的語法:

NVL(expression1, expression2)

其中,expression1 是要檢查的表達(dá)式,expression2 是如果 expression1 為 NULL 時返回的替代值。

以下是一個簡單的示例,說明如何在 PL/SQL 塊中使用 NVL 函數(shù):

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 的薪水,并將結(jié)果存儲在 v_salary 變量中。接下來,我們使用 NVL 函數(shù)將 v_salary 設(shè)置為查詢到的薪水或 0(如果查詢結(jié)果為 NULL)。最后,我們輸出員工的薪水。

在這個示例中,如果指定的員工 ID 不存在,那么 v_salary 將保持為 NULL,NVL 函數(shù)將其設(shè)置為 0。然后,我們輸出員工的薪水,即使它是 0。

0