数据窗口setfilter和setsqlselect使用,该如何解决
发布网友
发布时间:2022-05-06 03:45
我来回答
共1个回答
热心网友
时间:2022-05-06 05:15
我的数据库表很多,数据量也很多,每个表大概有60W条左右,要想一次在一个数据窗口中显示太慢了。所以考虑当显示条数超过5W条我就提示用户做查询,现在考虑使用setfilter或者setsqlselect中的一个,优先考虑setfilter,但是它过滤的只是当前窗口中的,很明显我想要从所有的数据中过滤,但是又不想让所有数据都在datawindow中显示。用setsqlselect是要根据我datawindow中字段做出选择的,感觉有点麻烦。不知道还有什么其他办法?
------解决方案--------------------------------------------------------记录太多,还可以考试 select top :n
其中N可以做成retrieve参数传入的.
------解决方案--------------------------------------------------------用setsqlselect,根据条件先select count(*)看下有多少条记录,这样好判断些
它先把全部数据都取出来,对你减少数据量是一点帮助也没有!
要用retrieve()
按需要提取数据设置,显示多少就取多少!
rows->retrieve options->rows as needed
------解决方案--------------------------------------------------------根据查询条件拼接SQL,然后setsqlselect,retrieve
------解决方案--------------------------------------------------------肯定要用setsqlselect,只是麻烦一点,不是太难
探讨我的数据库表很多,数据量也很多,每个表大概有60W条左右,要想一次在一个数据窗口中显示太慢了。所以考虑当显示条数超过5W条我就提示用户做查询,现在考虑使用setfilter或者setsqlselect中的一个,优先考虑setfilter,但是它过滤的只是当前窗口中的,很明显我想要从所有的数据中过滤,但是又不想让所有数据都在datawindow中显示。用setsqlselect是要根据我datawi�0�3�0�2
------解决方案--------------------------------------------------------用setsqlselect吧,不要嫌麻烦,呵呵