问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

oracle 数据库 sql语言 数组和表join的方法

发布网友 发布时间:2022-04-21 03:21

我来回答

2个回答

懂视网 时间:2022-04-10 22:47

1、建表语句

CREATE TABLE Websites(
ID INT PRIMARY KEY,
NAME VARCHAR2(30),
URL VARCHAR2(100),
alexa INT,
country VARCHAR2(30)
);
INSERT INTO Websites(ID,NAME,URL,alexa,country)VALUES(1,‘Google‘,‘http://www.google.com/‘,1,‘USA‘);
INSERT INTO Websites(ID,NAME,URL,alexa,country)VALUES(2,‘淘宝‘,‘http://www.taobao.com/‘,13,‘CN‘);
INSERT INTO Websites(ID,NAME,URL,alexa,country)VALUES(3,‘天猫‘,‘http://www.tianmao.com/‘,16,‘CN‘);
INSERT INTO Websites(ID,NAME,URL,alexa,country)VALUES(4,‘微博‘,‘http://www.weibo.com/‘,20,‘CN‘);
INSERT INTO Websites(ID,NAME,URL,alexa,country)VALUES(5,‘Facebook‘,‘http://www.facebook.com/‘,3,‘USA‘);
INSERT INTO Websites(ID,NAME,URL,alexa,country)VALUES(7,‘stackoverflow‘,‘http://www.stackoverflow.com/‘,0,‘IND‘);
CREATE TABLE access_log(
aid INT PRIMARY KEY,
site_id INT,
COUNT INT,
datetime date
);
INSERT INTO access_log(aid,site_id,COUNT,datetime)VALUES(1,1,45,to_timestamp(to_char(systimestamp,‘YYYY-MM-DD HH24:MI:SS.FF‘),‘YYYY-MM-DD HH24:MI:SS.FF‘));
INSERT INTO access_log(aid,site_id,COUNT,datetime)VALUES(2,3,100,to_timestamp(to_char(systimestamp,‘YYYY-MM-DD HH24:MI:SS.FF‘),‘YYYY-MM-DD HH24:MI:SS.FF‘));
INSERT INTO access_log(aid,site_id,COUNT,datetime)VALUES(3,1,230,to_timestamp(to_char(systimestamp,‘YYYY-MM-DD HH24:MI:SS.FF‘),‘YYYY-MM-DD HH24:MI:SS.FF‘));
INSERT INTO access_log(aid,site_id,COUNT,datetime)VALUES(4,2,10,to_timestamp(to_char(systimestamp,‘YYYY-MM-DD HH24:MI:SS.FF‘),‘YYYY-MM-DD HH24:MI:SS.FF‘));
INSERT INTO access_log(aid,site_id,COUNT,datetime)VALUES(5,5,205,to_timestamp(to_char(systimestamp,‘YYYY-MM-DD HH24:MI:SS.FF‘),‘YYYY-MM-DD HH24:MI:SS.FF‘));
INSERT INTO access_log(aid,site_id,COUNT,datetime)VALUES(6,4,13,to_timestamp(to_char(systimestamp,‘YYYY-MM-DD HH24:MI:SS.FF‘),‘YYYY-MM-DD HH24:MI:SS.FF‘));
INSERT INTO access_log(aid,site_id,COUNT,datetime)VALUES(7,3,220,to_timestamp(to_char(systimestamp,‘YYYY-MM-DD HH24:MI:SS.FF‘),‘YYYY-MM-DD HH24:MI:SS.FF‘));
INSERT INTO access_log(aid,site_id,COUNT,datetime)VALUES(8,5,545,to_timestamp(to_char(systimestamp,‘YYYY-MM-DD HH24:MI:SS.FF‘),‘YYYY-MM-DD HH24:MI:SS.FF‘));
INSERT INTO access_log(aid,site_id,COUNT,datetime)VALUES(9,3,201,to_timestamp(to_char(systimestamp,‘YYYY-MM-DD HH24:MI:SS.FF‘),‘YYYY-MM-DD HH24:MI:SS.FF‘));
SELECT * FROM Websites;
SELECT * FROM access_log;

2、

Oracle-Join

标签:int   sys   tab   into   ace   arc   天猫   try   websites   

热心网友 时间:2022-04-10 19:55

给你copy一段,自己看:

PL/SQL表---table()函数用法
/*

PL/SQL表---table()函数用法:
利用table()函数,我们可以将PL/SQL返回的结果集代替table。

oracle内存表在查询和报表的时候用的比较多,它的速度相对物理表要快几十倍。

simple example:

1、table()结合数组:

*/

create or replace type t_test as object(
id integer,
rq date,
mc varchar2(60)
);

create or replace type t_test_table as table of t_test;

create or replace function f_test_array(n in number default null) return t_test_table
as
v_test t_test_table := t_test_table();
begin
for i in 1 .. nvl(n,100) loop
v_test.extend();
v_test(v_test.count) := t_test(i,sysdate,'mc'||i);
end loop;
return v_test;
end f_test_array;
/

select * from table(f_test_array(10));

select * from the(select f_test_array(10) from al);

/*

2、table()结合PIPELINED函数:

*/

create or replace function f_test_pipe(n in number default null) return t_test_table PIPELINED
as
v_test t_test_table := t_test_table();
begin
for i in 1 .. nvl(n,100) loop
pipe row(t_test(i,sysdate,'mc'||i));
end loop;
return;
end f_test_pipe;
/

select * from table(f_test_pipe(20));

select * from the(select f_test_pipe(20) from al);

/*

3、table()结合系统包:

*/

create table test (id varchar2(20));
insert into test values('1');
commit;
explain plan for select * from test;
select * from table(dbms_xplan.display);

PL/SQL表---table()函数用法
/*

PL/SQL表---table()函数用法:
利用table()函数,我们可以将PL/SQL返回的结果集代替table。

oracle内存表在查询和报表的时候用的比较多,它的速度相对物理表要快几十倍。

simple example:

1、table()结合数组:

*/

create or replace type t_test as object(
id integer,
rq date,
mc varchar2(60)
);

create or replace type t_test_table as table of t_test;

create or replace function f_test_array(n in number default null) return t_test_table
as
v_test t_test_table := t_test_table();
begin
for i in 1 .. nvl(n,100) loop
v_test.extend();
v_test(v_test.count) := t_test(i,sysdate,'mc'||i);
end loop;
return v_test;
end f_test_array;
/

select * from table(f_test_array(10));

select * from the(select f_test_array(10) from al);

/*

2、table()结合PIPELINED函数:

*/

create or replace function f_test_pipe(n in number default null) return t_test_table PIPELINED
as
v_test t_test_table := t_test_table();
begin
for i in 1 .. nvl(n,100) loop
pipe row(t_test(i,sysdate,'mc'||i));
end loop;
return;
end f_test_pipe;
/

select * from table(f_test_pipe(20));

select * from the(select f_test_pipe(20) from al);

/*

3、table()结合系统包:

*/

create table test (id varchar2(20));
insert into test values('1');
commit;
explain plan for select * from test;
select * from table(dbms_xplan.display);
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
会声会影如何裁剪视频画面范围 怎么正确喝酒的方法 真正好的饮用方式 日本清酒獭祭正确喝法 深圳有几家酒店可以真正意义上说是五星级? 深圳富苑皇冠假日套房式酒店酒店周边 深圳富苑皇冠假日套房酒店酒店简介 深圳富苑皇冠假日套房式酒店酒店介绍 金福人生多倍保重疾险怎么样?值不值得买? wpsword文档怎么删除空白页面 wPS删除空白页方法wps怎么删除多余空白页最有效方法 如何把手机中的照片打印到纸上? 怎么把手机上的图片打印出来 怎样把手机里的图片打印出来 手机图片怎么打印更清楚 如何把手机的照片打印出来 手机拍照的图片怎么打印才能清晰 404 Not Found 手机千牛怎么传主图视频? 淘宝主图视频怎么做? 淘宝主图视频怎么用9:16的,不是16:9的哦 淘宝店我的宝贝视频已经显示发布成功了,但为什么宝贝详情页没有播放视频而且还是显示我要添加视频? 快剪辑制作的主图视频就是1:1的,上传淘宝为什么尺寸不符合要求 淘宝主图视频怎么上传不了呀? 淘宝视频上传尺寸不符合要求怎么办 微信扫码转账无法打印记录吗? 微信支付记录怎么彻底删除 微信转帐删了四年了,可以在银行掉出记录吗? 怎么样找到删除的微信转账记录? 珠海市蜂巢数据技术有限公司怎么样? 杭州蜂巢主题娱乐有限公司怎么样? Oracle中的join 和left join 有什么区别啊?还有inner join oracle数据库sql语句里只有join是左连接还是右连接 数据库中JOIN怎么用? Oracle中join类型有哪些? oracle语句join和(+)的用法 oracle中jion all的用法? oracle数据库中,left join后 where 的使用方法 oracle中 update from inner join 如何实现 Oracle 使用join和不使用的区别 如何减少oracle使用inner join时所使用的时间? Oracle中的join 和left join 有什么区别啊?还有inner join Oracle两张视图能否join?能的话怎么join? oracle select语句join Oracle数据库update和join on 的问题 oracle sql inner join 问题 sql 连接oracle的几种方式 oracle中如何实现如下join结果 铃声多多的歌怎么下载到手机上 3D补牙是多少钱一颗 补牙一般多少钱