List of usage examples for org.springframework.data.solr.core.query MaxFunction max
public static MaxFunction max(Number value, Function compareFunction)
From source file:org.springframework.data.solr.core.DefaultQueryParserTests.java
/** * @see DATASOLR-121//www . j a v a 2s . com */ @Test public void testConstructGroupQueryWithAllPossibleParameters() { GroupOptions groupOptions = new GroupOptions(); SimpleQuery query = new SimpleQuery(); query.addCriteria(new SimpleStringCriteria("*:*")); query.setGroupOptions(groupOptions); groupOptions.setOffset(1); groupOptions.setLimit(2); groupOptions.addGroupByField("field_1"); groupOptions.addGroupByFunction(MaxFunction.max("field_1", "field_2")); groupOptions.addGroupByQuery(new SimpleQuery("*:*")); groupOptions.addSort(new Sort(Sort.Direction.DESC, "field_3")); groupOptions.setTotalCount(true); SolrQuery solrQuery = queryParser.constructSolrQuery(query); assertGroupFormatPresent(solrQuery, true); Assert.assertEquals("field_1", solrQuery.get(GroupParams.GROUP_FIELD)); Assert.assertEquals("{!func}max(field_1,field_2)", solrQuery.get(GroupParams.GROUP_FUNC)); Assert.assertEquals("*:*", solrQuery.get(GroupParams.GROUP_QUERY)); Assert.assertEquals("field_3 desc", solrQuery.get(GroupParams.GROUP_SORT)); Assert.assertEquals("1", solrQuery.get(GroupParams.GROUP_OFFSET)); Assert.assertEquals("2", solrQuery.get(GroupParams.GROUP_LIMIT)); }
From source file:org.springframework.data.solr.core.DefaultQueryParserTests.java
/** * @see DATASOLR-121/*from www .j a v a 2 s .c om*/ */ @Test public void testConstructGroupQueryWithMultipleFunctions() { SimpleQuery query = new SimpleQuery(); query.addCriteria(new SimpleStringCriteria("*:*")); query.setGroupOptions(new GroupOptions()); query.getGroupOptions().addGroupByFunction(MaxFunction.max("field_1", "field_2")); query.getGroupOptions().addGroupByFunction(MaxFunction.max("field_3", "field_4")); SolrQuery solrQuery = queryParser.constructSolrQuery(query); assertGroupFormatPresent(solrQuery, false); Assert.assertArrayEquals(new String[] { "{!func}max(field_1,field_2)", "{!func}max(field_3,field_4)" }, solrQuery.getParams(GroupParams.GROUP_FUNC)); Assert.assertNull(solrQuery.getParams(GroupParams.GROUP_QUERY)); Assert.assertNull(solrQuery.getParams(GroupParams.GROUP_FIELD)); }