oracle—运算符

一、PL/SQL表达式与运算符

  • 算数运算符
运算符 含义
+
-
*
/
** 乘方
  • 逻辑运算符
运算符 含义
AND 两者同时为真,结果才为真
OR 有一个为真,结果就为真
NOT 取反
  • 比较运算符
运算符 含义
IS NULL 如果测试值为NULL,则返回值为true,否则为false
LIKE 比较字符串,结合 % 进行模糊查询
BETWEEN 测试值是否在指定的范围内
IN 测试值是否在一系列的值中
  • 关系运算符
运算符 含义
= 等于
!= <> ~= 不等于
< 、 <= 小于 小于等于
> 、 >= 大于 大于等于
  • 连接运算符
运算符 含义
11 用于连接两个字符串

二、控制结构

  • 顺序结构

  • 条件结构

    • if
    if 条件1 then
        执行语句1;
        执行语句2;
    end if;
    
    • if else
    if 条件1 then
        执行语句1;
        执行语句2;
    else if =条件2 then
        执行语句3;
    else 
        执行语句4;
    end if;
    
  • CASE 结构

当分支比较多时,使用case分支比较方便

```sql
case [表达式]
    when 条件1 then 结果1;
    when 条件2 then 结果2;
    ...
    else 结果;
end;
```
  • 循环结构

    • loop

    如果不控制,oracle会一直执行loop之间的语句,陷入死循环

    loop 
        执行循环语句;
    end loop;
    
    • for
    for counter in 1..10 loop
        --测试一下,输出counter
        dbms_output.put_line(counter);
    end loop;    ```
    
    * when
    ```sql
    when i <= 10 loop
        dbms_output.put_line(i);
        i := i + 1;
    end loop;
    
  • exit 循环退出

    • 无条件退出

    执行到exit就直接退出循环,继续执行

    loop 
        执行语句;
        exit;
    end loop;
    
    • 有条件退出

    判断条件是否为true,当条件为true时,退出循环,继续执行。为false时,将继续执行循环语句

    loop 
        执行语句;
        exit when 条件1;
    end loop;
    
  • continue 继续循环

    • 无条件继续

    当碰到continue时,无条件的终止本次循环,开始下一次的循环

    loop
        执行语句1;
        continue;
        执行语句2;
    end loop;
    
    • 有条件继续

    当碰到continue时,判断条件是否为true,如果为true时,将终止本次循环,开始下一次的循环,如果为false,将继续本次循环

    loop
        执行语句1;
        continue when 条件;
        执行语句2;
    end loop;
    
  • goto语句

    declare
        m varchar2(20);
    begin
        m := 'AndyThink';
        <<lable1\>\>
        dbms_output.put_line(m);
        goto lable1;
    end;
    
    
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.PLSQL入门 Oracle数据库对SQL进行了扩展,然后加入了一些编程语言的特点,可以对SQL的执行过程进行...
    随手点灯阅读 605评论 0 8
  • 教程资料:http://www.w3ii.com/zh-CN/plsql/plsql_basic_syntax.h...
    xiang205012阅读 470评论 0 0
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,497评论 0 17
  • oracle存储过程常用技巧 我们在进行pl/sql编程时打交道最多的就是存储过程了。存储过程的结构是非常的简单的...
    dertch阅读 3,509评论 1 12
  • 花谢还有重开日 月缺自有月圆时 我和你的分离 生生世世 难有再相聚 你就是我的VIP 你永远是我的ing 不许须臾...
    灵山阅读 179评论 0 0