大数据批量匹配数据库

qq_36934345 2017-05-26 09:12:22

select id,jm,lk from biao_a where id in
('01'.'02'.'03.'04'....................................................................................'260003',...............'1000000');.


in 后面有大量条件,直接运行汇报ORACLE-01795 不能超过1000行数据,不要叫我每1000后加or in数太多会死人的...还有这是生产库不能随意改参数....

这种大批量的数据查询怎么弄啊
...全文
514 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
sych888 2017-06-16
  • 打赏
  • 举报
回复
利用子查询........
imcmuc 2017-06-16
  • 打赏
  • 举报
回复
create table c( id VARCHAR2(20 BYTE) ); declare begin for i in 1..10000 loop insert into c values (i); end loop; end;
imcmuc 2017-06-16
  • 打赏
  • 举报
回复
#7 说的很有道理,#4的代码是条件临时表的创建,和条件数据的添加,报错的原因是
create table c(
  id VARCHAR2(20 BYTE)
);
 
declare
begin
for i in 1..10000
loop
  insert into c values (i);
end loop;
end;
需要一个分号
qq_36934345 2017-06-01
  • 打赏
  • 举报
回复
引用 4 楼 qq_38884602 的回复:
create table c(
  id VARCHAR2(20 BYTE)
)

declare
begin
for i in 1..10000
loop
  insert into c values (i);
end loop;
end;
01 02 03 你自己在前面加个0都可以了
报错00922
qq_36934345 2017-06-01
  • 打赏
  • 举报
回复
引用 4 楼 qq_38884602 的回复:
create table c(
  id VARCHAR2(20 BYTE)
)

declare
begin
for i in 1..10000
loop
  insert into c values (i);
end loop;
end;
01 02 03 你自己在前面加个0都可以了
in 后面不要加引号和逗号么
yan_jg 2017-06-01
  • 打赏
  • 举报
回复
大批量的匹配信息不要用in 效率很低。。最好用exists 可以把in中的内容 放入到一个临时表中 create table temp01 (id varchar2(32)); select id,jm,lk from biao_a zb where exists(select 1 from temp01 cb where cb.id = zb.id); 不知道你需要匹配的数据都是什么样子的。 是不是可以用 大于号小于号处理 。 如果 是 01 02 到 1000 。。。 10000这样的 直接 where id<= 10000 就可以了 如果 有多段。 可以union 一下 。
qq_36934345 2017-05-27
  • 打赏
  • 举报
回复
引用 1 楼 qq_38884602 的回复:
建个临时表
select id,jm,lk from biao_a where id  (select id from temp)
这样写,那些大量的条件放在哪个位置啊~
sxq129601 2017-05-27
  • 打赏
  • 举报
回复
1000个in效率能快到哪去,改写成楼上的写法
qq_38884602 2017-05-27
  • 打赏
  • 举报
回复
create table c(
  id VARCHAR2(20 BYTE)
)

declare
begin
for i in 1..10000
loop
  insert into c values (i);
end loop;
end;
01 02 03 你自己在前面加个0都可以了
qq_38884602 2017-05-26
  • 打赏
  • 举报
回复
建个临时表
select id,jm,lk from biao_a where id  (select id from temp)
阿⾥巴巴⼤数据之路 阿⾥巴巴⼤数据之路——数据技术篇 数据技术篇 ⼀、整体架构 ⼀、整体架构      从下⾄上依次分为数据采集层、数据计算层、数据服务层、数据应⽤层    数据采集层:以DataX为代表的数据同步⼯具和同步中⼼    数据计算层:以MaxComputer为代表的离线数据存储和计算平台    数据服务层:以RDS为代表的数据库服务(接⼝或者视图形式的数据服务)    数据应⽤层:包含流量分析平台等数据应⽤⼯具 ⼆、数据采集(离线数据同步) ⼆、数据采集(离线数据同步)   数据采集主要分为⽇志采集和数据库采集。⽇志采集暂略(参考书籍原⽂)。我们主要运⽤的是数据库采集(数据库同步)。   通常情况下,我们需要规定原业务系统表增加两个字段:创建时间、更新时间(或者⾄少⼀个字段:更新时间)   数据同步主要可以分为三⼤类:直连同步、数据⽂件同步、数据库⽇志解析同步   1.直连同步     通过规范好的接⼝和动态连接库的⽅式直接连接业务库,例如通过ODBC/JDBC进⾏直连     当然直接连接业务库的话会对业务库产⽣较⼤压⼒,如果有主备策略可以从备库进⾏抽取,此⽅式不适合直接从业务库到数仓的情景   2.数据⽂件同步     从源系统⽣成数据⽂本⽂件,利⽤FTP等传输⽅式传输⾄⽬标系统,完成数据的同步     为了防⽌丢包等情况,⼀般会附加⼀个校验⽂件 ,校验⽂件包含数据量、⽂件⼤⼩等信息     为了安全起见还可以加密压缩传输,到⽬标库再解压解密,提⾼安全性   3.数据库⽇志同步     主流数据库都⽀持⽇志⽂件进⾏数据恢复(⽇志信息丰富,格式稳定),例如Oracle的归档⽇志   (数据库相关⽇志介绍,参考:)    4.阿⾥数据仓库同步⽅式     1)批量数据同步     要实现各种各样数据源与数仓的数据同步,需要实现数据的统⼀,统⼀的⽅式是将所有数据类型都转化为中间状态,也就是字符串类型。以此来实现数据格式的统⼀。     产品——阿⾥DataX:多⽅向⾼⾃由度异构数据交换服务产品,产品解决的主要问题:实现跨平台的、跨数据库、不同系统之间的数据同步及交互。     产品简介:     开源地址:     更多的介绍将会通过新开随笔进⾏介绍!(当然还有其他主流的数据同步⼯具例如kettle等!)     2)实时数据同步     实时数据同步强调的是实时性,基本原理是通过数据库的⽇志(MySQL的bin-log,Oracle的归档⽇志等)实现数据的增量同步传输。     产品——阿⾥TimeTunnel(简称TT)。TT产品本质是⼀个⽣产者、消费者模型的消息中间件     3)常见问题       1.增量数据与全量数据的合并         主要的场景是数据同步中周期全量同步,对应的解决⽅案是每次只同步变更的数据,然后和上⼀周期合并,形成最新的全量数据(选择此⽅案的原因是绝⼤多 数⼤数据平台不⽀持update操作)         具体的⽅案主要有union的联合操作(可以通过⽣成增量中间表detal)与阿⾥主推的全外连接full outer join+全量覆盖insert overwrite的形式。实例参考如下: SQL的Join语法有很多, inner join(等值连接) 只返回两个表中联结字段相等的⾏, left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录, right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录, 假设我们有两张表。Table A 是左边的表。Table B 是右边的表。其各有四条记录,其中有两条记录name是相同的,如下所⽰: A表 id name 1 Pirate 2 Monkey 3 Ninja 4 Spaghetti B表 id name 1 Rutabaga 2 Pirate 3 Darth Vade 4 Ninja 让我们看看不同JOIN的不同。 FULL [OUTER] JOIN (1) SELECT * FROM TableA FULL OUTER JOIN TableB ON TableA.name = TableB.name TableA.name = TableB.name 的情况,A和B的交集有两条数据,那么 FULL OUTER JOIN的结果集, 应该是2+2+2=6条,即上⾯的交集,再加剩下的四条数据,没有匹配,以null补全。 结果集 (TableA.) (TableB.) id name id name 1 Pirate 2 Pirate 2 Monkey null null 3 Ninja 4 Ninja 4 Spaghetti null null null null 1 Rutabag

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧