首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

巨量数据过滤不出来解决方案

2012-02-02 
巨量数据过滤不出来一个SQL表,有两百多万的记录,在DW中FILTER时,根本就过滤不出来,好像是数据库把全部记录

巨量数据过滤不出来
一个SQL表,有两百多万的记录,在DW中FILTER时,根本就过滤不出来,好像是数据库把全部记录都下到本地才进行过滤的,WINDOWS马上就报内存不足,如何解决?让SQL只返回符合条件的记录?

[解决办法]
把过滤的条件写到where中。
可以用getsqlselect()和setsqlselect()
两个函数实现。
[解决办法]
把过滤的条件写到where中。
可以用getsqlselect()和setsqlselect()
两个函数实现。
[解决办法]
通过写SQL语句,把需要的数据读取到DW中就可以了。
[解决办法]
同意用setsqlselect()
[解决办法]
直接MODIFY 数据窗口中WHERE 子句
例如 select * from table where 1=1
只要把 1=1 后面的语句替换或者加入自己想要的过滤条件就 可以了
PB基本的 拼WHERE子句功能
retrieve()带参数功能比较慢的
[解决办法]
把过滤的条件写到where中。
可以用getsqlselect()和setsqlselect()
两个函数实现。

//////////////////////////////////////////////////////

正解
支持

比如简单一些
你的数据窗口的构成SQL语句为
select id,name,sex from rygl
那么查询时
string ls_sql
ls_sql = " select id,name,sex from rygl " + " where id> 100 "
dw_1.setsqlselect(ls_sql) //将新的SQL语句更新数据窗口原先的SQL语句
dw_1.retrieve()
commit;

热点排行