Oracle DECODE 函数应用示例
来源:互联网 发布:数据库int 2的几次方 编辑:程序博客网 时间:2024/06/03 18:22
/*Decode函数*/
--Decode函数的原型为: Decode(testValue, if1, then1, if2,then2.....else).
--针对testValue进行测试,若testValue等于if1则返回then1,若testValue等于if2则返回then2,....若都没有返回,刚返回else.
--常见用法是在Oracle中实现行转列(Convert Rows to Columns).
--Decode函数的原型为: Decode(testValue, if1, then1, if2,then2.....else).
--针对testValue进行测试,若testValue等于if1则返回then1,若testValue等于if2则返回then2,....若都没有返回,刚返回else.
--常见用法是在Oracle中实现行转列(Convert Rows to Columns).
SQL脚本
drop table student;
/
--1.创建表
CREATE TABLE STUDENT
(
SID VARCHAR(10),
SName varchar(30),
sex varchar2(2) DEFAULT '1',
age integer,
address varchar(100),
primary key (SID)
);
/
--2.新增数据
Declare
i integer:=1;
v_sql varchar(1000);
begin
i:=1;
while i<10 loop
v_sql:=' insert into student(sid,SName,sex,age,address) values(:1,:2,:3,:4,:5)';
if i<5 then
execute immediate v_sql using i,'同学'||i,to_char(MOD(i,2)),18,'hunan';
else
execute immediate v_sql using i,'同学'||i,to_char(MOD(i,2)),19,'sichuan';
end if;
commit;
i:=i+1;
end loop;
end;
/
commit;
/
--3.调用存储过程
--==========================================================================================
begin
InsertTestData(10);
end;
/
/*Decode函数*/
--Decode函数的原型为: Decode(testValue, if1, then1, if2,then2.....else).
--针对testValue进行测试,若testValue等于if1则返回then1,若testValue等于if2则返回then2,....若都没有返回,刚返回else.
--常见用法是在Oracle中实现行转列(Convert Rows to Columns).
--4.用Decode 查询同学们的性别信息
SELECT SName,
DECODE (sex,
'1', '男',
'0', '女'
) AS 性别
FROM STUDENT;
/
--5.按性别分组,统计家庭地址在hunan,sichuan 的同学个数
SELECT age, SUM (DECODE (address, 'hunan', 1, 0)) AS "湖南省",
SUM (DECODE (address, 'sichuan', 1, 0)) AS "四川省"
FROM student
GROUP BY age;
/
/
--1.创建表
CREATE TABLE STUDENT
(
SID VARCHAR(10),
SName varchar(30),
sex varchar2(2) DEFAULT '1',
age integer,
address varchar(100),
primary key (SID)
);
/
--2.新增数据
Declare
i integer:=1;
v_sql varchar(1000);
begin
i:=1;
while i<10 loop
v_sql:=' insert into student(sid,SName,sex,age,address) values(:1,:2,:3,:4,:5)';
if i<5 then
execute immediate v_sql using i,'同学'||i,to_char(MOD(i,2)),18,'hunan';
else
execute immediate v_sql using i,'同学'||i,to_char(MOD(i,2)),19,'sichuan';
end if;
commit;
i:=i+1;
end loop;
end;
/
commit;
/
--3.调用存储过程
--==========================================================================================
begin
InsertTestData(10);
end;
/
/*Decode函数*/
--Decode函数的原型为: Decode(testValue, if1, then1, if2,then2.....else).
--针对testValue进行测试,若testValue等于if1则返回then1,若testValue等于if2则返回then2,....若都没有返回,刚返回else.
--常见用法是在Oracle中实现行转列(Convert Rows to Columns).
--4.用Decode 查询同学们的性别信息
SELECT SName,
DECODE (sex,
'1', '男',
'0', '女'
) AS 性别
FROM STUDENT;
/
--5.按性别分组,统计家庭地址在hunan,sichuan 的同学个数
SELECT age, SUM (DECODE (address, 'hunan', 1, 0)) AS "湖南省",
SUM (DECODE (address, 'sichuan', 1, 0)) AS "四川省"
FROM student
GROUP BY age;
/
运行结果:
- Oracle DECODE 函数应用示例
- Oracle DECODE 函数应用示例
- Oracle中DECODE函数的应用
- Oracle函数to_char应用示例
- oracle decode 应用
- ORACLE中DECODE()函数在数据统计中的应用
- oracle decode.oracle 函数用法之decode
- decode函数的应用
- Oracle中Decode()函数
- ORACLE 中的DECODE函数
- oracle中decode函数
- Oracle DECODE函数
- Oracle的DECODE函数
- Oracle decode函数
- Oracle函数Decode
- oracle decode()函数
- oracle-decode函数
- oracle decode函数
- 启动Oracle,SQL服务,IIS脚本
- ARTOOLKIT安装与配置
- Oracle 创建及调用存储过程,脚本示例
- C# 与 C++ 数据类型对照表
- 以 .NET 创建 Code 39 条码图片 供水晶报表打印
- Oracle DECODE 函数应用示例
- 脚本执行SQL语句 sql server
- 一台电脑上同时安装Oracle92,oracle10g,出现Ora-12154无法解析指定的连接标识符
- 疑惑
- redhat enterprise 5 IP配置
- package,source folder,folder的区别(转)
- 网络推广的常用手法
- 软件性能——“并发用户数”、“系统用户数”和“同时在线用户数”之间的差别
- spring struts2