运维联盟俱乐部

 找回密码
 立即注册
查看: 281|回复: 0

[日常管理] plsql条件

[复制链接]
  • TA的每日心情
    开心
    2023-8-9 11:05
  • 发表于 2023-12-9 23:01:46 | 显示全部楼层 |阅读模式
    在 PL/SQL 中,您可以使用条件语句来根据不同的条件执行不同的代码块。常用的条件语句包括 IF-THEN、IF-THEN-ELSE 和 CASE 语句。

    IF-THEN 语句:
    sql
    IF condition THEN
      -- 当条件为真时执行的代码块
    END IF;
    示例:

    sql
    DECLARE
      v_num NUMBER := 10;
    BEGIN
      IF v_num > 0 THEN
        DBMS_OUTPUT.PUT_LINE('v_num is greater than 0');
      END IF;
    END;
    /
    IF-THEN-ELSE 语句:
    sql
    IF condition THEN
      -- 当条件为真时执行的代码块
    ELSE
      -- 当条件为假时执行的代码块
    END IF;
    示例:

    sql
    DECLARE
      v_num NUMBER := -5;
    BEGIN
      IF v_num > 0 THEN
        DBMS_OUTPUT.PUT_LINE('v_num is greater than 0');
      ELSE
        DBMS_OUTPUT.PUT_LINE('v_num is less than or equal to 0');
      END IF;
    END;
    /
    CASE 语句:
    sql
    CASE expression
      WHEN value1 THEN
        -- 当 expression 等于 value1 时执行的代码块
      WHEN value2 THEN
        -- 当 expression 等于 value2 时执行的代码块
      ...
      ELSE
        -- 当 expression 不等于任何 value 时执行的代码块
    END CASE;
    示例:

    sql
    DECLARE
      v_day VARCHAR2(10) := 'Monday';
    BEGIN
      CASE v_day
        WHEN 'Monday' THEN
          DBMS_OUTPUT.PUT_LINE('Today is Monday');
        WHEN 'Tuesday' THEN
          DBMS_OUTPUT.PUT_LINE('Today is Tuesday');
        WHEN 'Wednesday' THEN
          DBMS_OUTPUT.PUT_LINE('Today is Wednesday');
        ELSE
          DBMS_OUTPUT.PUT_LINE('Today is not Monday, Tuesday or Wednesday');
      END CASE;
    END;
    /
    以上是 PL/SQL 中常用的条件语句示例。您可以根据具体需求自由调整代码块和条件表达式。如果您有其他问题,请随时提问。

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    运维联盟俱乐部 ( 冀ICP备19036648号 )

    GMT+8, 2024-5-2 20:31 , Processed in 0.045827 second(s), 21 queries , Gzip On.

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表