如何从RavenDB中的Map/Reduce索引对数值属性执行范围查询
我使用的是Raven build 960,我有一个Map/Reduce索引。reduce函数中的某些属性是数字,但它们存储为字符串。这是预期的行为,因为Raven当时没有类型信息。如果结果类将属性声明为相应的数值类型,则该属性将正确反序列化为相应的数值类型,如Int32。但是,它会中断范围查询,并将值作为字符串与数值进行比较 例如,其中一个属性是最初存储为十进制的权重。当执行范围查询时,例如:如何从RavenDB中的Map/Reduce索引对数值属性执行范围查询,ravendb,Ravendb,我使用的是Raven build 960,我有一个Map/Reduce索引。reduce函数中的某些属性是数字,但它们存储为字符串。这是预期的行为,因为Raven当时没有类型信息。如果结果类将属性声明为相应的数值类型,则该属性将正确反序列化为相应的数值类型,如Int32。但是,它会中断范围查询,并将值作为字符串与数值进行比较 例如,其中一个属性是最初存储为十进制的权重。当执行范围查询时,例如:Weight:[3到NULL]为了检索所有权重大于3的文档,它不会返回权重为20的内容,因为按字典顺序“
Weight:[3到NULL]
为了检索所有权重大于3的文档,它不会返回权重为20的内容,因为按字典顺序“20”<“3”
在索引定义中,我已经为权重指示了SortOptions.Float
,并且排序正确,但是范围查询仍然失败
如何对Map/Reduce索引中的数值属性执行范围查询?Eulerfx,
我们在此描述如何将信息存储在索引中:
对于浮动,您需要向raven提供关于它的指示
Weight:[Fx3 TO NULL]
行得通