solr 函数使用之map
2013-01-16 09:52
176 查看
map 函数是将将一个字段指定范围内的值进行映射转换为目标值
常见的用法有:
map(x,min,max,target)和map(x,min,max,target,other)两种
例如:
map(x,0,0,1) 在函数参数中的x如果为0时则将其值映射为1,这在处理默认值为0时很有用。
map(x,10,100,1,2) 在函数参数中的x如果落在[10,100]之间,则将x的值映射为1,否则将其值映射为2
使用方法:
一般用作排序
sort=sum(value,map(age,10,10,$x,$y))+asc&x=2&y=3
上面是将age字段值为10,则将其值映射为2,否则为3,然后加上value,然后按照升序排列
sort=sum(value,map(age,10,10,$x,$y))+asc&x=sum(2,some_field*2)&y=3
与上一个例子的意图差不多,只是x值的生成是通过函数实现
通过map函数,对score字段进行影响,然后对score进行排序
http://dev.aifang.com:8487/solr/loupan/select/?q={!func}map(loupan_id,1004,1004,1,100)&fl=*,score&sort=score+asc,loupan_id+desc 直接在sort的时候使用map进行排序
http://dev.aifang.com:8487/solr/loupan/select/?q=*:*&fl=*,score&sort=map(loupan_id,1004,1004,1,100)+asc
常见的用法有:
map(x,min,max,target)和map(x,min,max,target,other)两种
例如:
map(x,0,0,1) 在函数参数中的x如果为0时则将其值映射为1,这在处理默认值为0时很有用。
map(x,10,100,1,2) 在函数参数中的x如果落在[10,100]之间,则将x的值映射为1,否则将其值映射为2
使用方法:
一般用作排序
sort=sum(value,map(age,10,10,$x,$y))+asc&x=2&y=3
上面是将age字段值为10,则将其值映射为2,否则为3,然后加上value,然后按照升序排列
sort=sum(value,map(age,10,10,$x,$y))+asc&x=sum(2,some_field*2)&y=3
与上一个例子的意图差不多,只是x值的生成是通过函数实现
通过map函数,对score字段进行影响,然后对score进行排序
http://dev.aifang.com:8487/solr/loupan/select/?q={!func}map(loupan_id,1004,1004,1,100)&fl=*,score&sort=score+asc,loupan_id+desc 直接在sort的时候使用map进行排序
http://dev.aifang.com:8487/solr/loupan/select/?q=*:*&fl=*,score&sort=map(loupan_id,1004,1004,1,100)+asc
相关文章推荐
- python中map、filter、reduce 函数使用方法
- 题目1029:魔咒词典(map使用以及字符串读取函数总结)
- [Java 8] (10) 使用Lambda完成函数组合,Map-Reduce以及并行化
- php array_map使用自定义的函数处理数组中的每个值
- Python中的高级函数map/reduce使用实例
- map函数的学习和使用
- 6.4.1 使用 map 函数
- PHP数组处理函数的使用array_map(三)
- [Java 8] (10) 使用Lambda完成函数组合,Map-Reduce以及并行化
- 使用文件映射的方式进行共享数据中CreateFileMapping、MapViewOfFile函数参数说明
- 基于python的-map(),reduce(),filter()函数的使用与区别
- spark学习-16-Spark的Map()和FlatMap()函数使用
- [Java 8] (10) 使用Lambda完成函数组合,Map-Reduce以及并行化
- php array_map()数组函数使用说明
- solr入门之Solr函数查询初使用之查询字段是否包含指定内容
- python中map()函数和reduce()函数的使用
- 使用boost的xxx_list_of函数为静态容器map和vector等赋初值
- 使用map实现函数的switch-case
- [Java 8] (10) 使用Lambda完成函数组合,Map-Reduce以及并行化
- Python高阶函数(Map、Reduce、Filter)和lambda函数一起使用 ,三剑客