|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
用一个库#bak_database存放这些历史数据。decode|函数
在数据库开辟的历程傍边,有良多时分必要将行转换成列大概将列转换成行来显现数据,而常常我们在创建表布局时不克不及依据显现的请求来保留数据,因而乎只能在保留数据以后做一些需要的操纵(例如说:创建视图等)来到达显现的目标。
上面用一个罕见的数据显现来讲明decode函数的用法。就是成就单的显现,这个是教授教养办理体系中最多见的。我想做开辟的职员都碰到过这个,并且在年夜学时代也是经常打仗成就单,显现的是:姓名、语文、数学等
完成剧本以下(cjd.sql):
--建表
createtablestud
(
sidvarchar2(10),
kcbmvarchar2(10),
cjint
);
--拔出测试数据
insertintostudvalues(1,语文,80);
insertintostudvalues(2,数学,90);
insertintostudvalues(3,英语,100);
commit;
--创立视图,decode用法
createorreplaceviewcjdas
selectsid,
decode(kcbm,语文,cj,0)语文,
decode(kcbm,数学,cj,0)数学,
decode(kcbm,英语,cj,0)英语
fromstud
orderbysid;
--显现数据
select*fromcjd;
实行历程以下:
SQL>createtablestud(sidvarchar2(10),
2kcbmvarchar2(10),
3cjint);
表已创立。
SQL>insertintostudvalues(1,语文,80);
已创立1行。
SQL>insertintostudvalues(2,数学,90);
已创立1行。
SQL>insertintostudvalues(3,英语,100);
已创立1行。
SQL>commit;
提交完成。
SQL>createorreplaceviewcjdas
2selectsid,
3decode(kcbm,语文,cj,0)语文,
4decode(kcbm,数学,cj,0)数学,
5decode(kcbm,英语,cj,0)英语
6fromstud
7orderbysid;
视图已创建。
SQL>select*fromcjd;
SID语文数学英语
----------------------------------------
18000
20900
300100
为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。 |
|