运算符 | 意义 |
---|---|
= | 等于 |
<> , != , ~= , ^= | 不等于 |
< | 小于 |
> | 大于 |
<= | 小于或等于 |
>= | 大于或等于 |
+ | 加号 |
- | 减号 |
* | 乘号 |
/ | 除号 |
:= | 赋值号 |
=> | 关系号 |
.. | 范围运算 |
|| | 字符连接符 |
IS NULL | 是空值 |
BETWEEN AND | 介于两者之间 |
IN | 在一列值中间 |
AND | 逻辑与 |
OR | 逻辑或 |
NOT | 取返,如IS NOT NULL, NOT IN |
在PL/SQL编程中,变量赋值是一个值得注意的地方,它的语法如下:
* 变量赋值
variable := expression ;
* 声明同时为变量赋值
variable variable_Type:= expression ;
DECLARE
emp_id emp.empno%TYPE :=7788;
emp_name emp.ename%TYPE;
wages emp.sal%TYPE;
BEGIN
SELECT ename, NVL(sal,0) + NVL(comm,0) INTO emp_name, wages
FROM emp WHERE empno = emp_id;
DBMS_OUTPUT.PUT_LINE(emp_name||‘----‘||to_char(wages));
END;
提示:不能将SELECT语句中的列赋值给布尔变量。
1. CHAR 转换为 NUMBER: TO_NUMBER(‘100.0‘)
2.NUMBER 转换为CHAR: TO_CHAR(‘123.45‘)
3. 字符转换为日期: v_date := TO_DATE(‘2001.07.03‘,‘yyyy.mm.dd‘);
4.日期转换为字符 v_to_day := TO_CHAR(SYSDATE, ‘yyyy.mm.dd hh24:mi:ss‘) ;
-- Created on 2015/6/12 by LYH
declare
str char(10):=‘100.0‘;
i int:=421;
total int;
begin
total:=TO_NUMBER(str)+i;
Dbms_Output.put_line(TO_CHAR(total));
end;
在PL/SQL编程中,如果在变量的定义上没有做到统一的话,可能会隐藏一些危险的错误,这样的原因主要是变量的作用范围所致。变量的作用域是指变量的有效作用范围,与其它高级语言类似,PL/SQL的变量作用范围特点是:
一个例子
-- Created on 2015/6/15 by LYH
declare
Emess char(4):=‘李四‘;
begin
declare
v1 number(10);
begin
SELECT fage
INTO v1
from t_employee
where fname=‘Tom‘;
Dbms_Output.put_line(v1);
end;
declare
v1 number(10);
begin
SELECT fage
INTO v1
from t_employee
where fname=‘Jerry‘;
Dbms_Output.put_line(v1);
end;
end;
oracle学习之路(五)-----oracle数据类型的一般操作
原文地址:http://blog.csdn.net/qq_17284367/article/details/46502793