Database db=session.getDatabase("", "A.nsf");
formula = " Form='mainform' & @TextToNumber(sys_SuperUserdeal) != 1 & @TextToNumber(sys_SoftDelete) != 1 & @TextToNumber(Status_Type) = 2";
formula += " & SYS_SUBMITDATE >= @TextToTime(" +bdate+ ")";
formula += " & SYS_SUBMITDATE <= @TextToTime(" +edate+ ")";
bdate、edate传入的格式是字符串为2017-08-01
formula条件取不出数据来,将日期区间条件去掉则可以取出数据,这是为什么呢?我写出错了???
公式检索效率比较低下,一般情况下视图检索与全文检索效率比较高一些。但全文检索的准备性依赖于索引的更新频次。
全文检索是[域名],可以用>=、<=来设立区间,[域名]>=... AND [域名]<=...,日期可以转换成M/D/YYYY格式,多试几次。全文检索另外一个缺点是,返回结果都有上限,一般为1000。
视图检索不适合组合查询。
formula += " & SYS_SUBMITDATE >= @TextToTime('" +bdate+ "')";
formula += " & SYS_SUBMITDATE <= @TextToTime('" +edate+ "')";
刚试了,可行,可是这种方式性能太低,我查了几条记录需要 2分2秒,我准备舍弃这种查询方案!
对于日期判断还有什么快的方案。文档数据大概1万条记录
收起少了引号。。。。
不建议这样使用,建议直接使用日期类型。