1、SEQUENCE序列的使用
2、Oracle的输出函数
3、NVL (expr1, expr2)、NVL2 (expr1, expr2, expr3) 、NULLIF (expr1, expr2)函数的使用
4、DECODE()函数的使用
5、定义变量和常量
6、新增字段和注释
7、建立索引
1、SEQUENCE序列的使用
--创建序列
CREATE SEQUENCE "TPSDATA"."SEQ_TABLE_ID" MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 NOCACHE NOORDER NOCYCLE;
--查询获取序列
SELECT SEQ_TABLE_ID.NEXTVAL FROM DUAL;
2、Oracle的输出函数
BEGIN
DBMS_OUTPUT.PUT_LINE('系统时间:'||SYSDATE);
END;
3、NVL (expr1, expr2)、NVL2 (expr1, expr2, expr3) 、NULLIF (expr1, expr2)函数的使用
NVL (expr1, expr2):expr1为NULL,返回expr2;不为NULL,返回expr1。注意两者的类型要一致。
NVL2 (expr1, expr2, expr3) :xpr1不为NULL,返回expr2;为NULL,返回expr3。expr2和expr3类型不同的话,expr3会转换为expr2的类型 。
NULLIF (expr1, expr2):相等返回NULL,不等返回expr1。
SELECT NVL(NULL,1) FROM DUAL; --输出结果:1
SELECT NVL('HELLO',1) FROM DUAL; --输出结果:HELLO
SELECT NVL2(NULL,1,2) FROM DUAL; --输出结果:2
SELECT NVL2('HELLO',1,2) FROM DUAL; --输出结果:1
SELECT NULLIF(1,1) FROM DUAL; --输出结果:NULL
SELECT NULLIF(1,2) FROM DUAL; --输出结果:1
4、DECODE()函数的使用
SELECT DECODE(1,1,'张三',2,'李四','未找到用户名') FROM DUAL; --输出结果:张三
SELECT DECODE(2,1,'张三',2,'李四','未找到用户名') FROM DUAL; --输出结果:李四
SELECT DECODE(3,1,'张三',2,'李四','未找到用户名') FROM DUAL; --输出结果:未找到用户名
5、定义变量和常量
declare
var_countryname varchar2(50):='中国'; --定义变量
con_day constant integer:=365; --定义常量,使用关键字constant
6、新增字段和注释
--增加字段
ALTER TABLE 表名 ADD(字段名 VARCHAR2(50) DEFAULT '默认值' NOT NULL);
--增加注释
COMMENT ON COLUMN 表名.字段名 IS '注释';
7、建立索引
CREATE INDEX 索引名称 ON 表名(字段);
CREATE INDEX EMP_DEPTNO_INDEX ON EMP(DEPTNO);