@Test public void testSearchWithNumericSort() { SearchQuery searchQuery = Druids.newSearchQueryBuilder() .dataSource(QueryRunnerTestHelper.dataSource) .granularity(QueryRunnerTestHelper.allGran) .intervals(QueryRunnerTestHelper.fullOnIntervalSpec) .query("a") .sortSpec(new SearchSortSpec(StringComparators.NUMERIC)) .build(); List<SearchHit> expectedHits = new ArrayList<>(); expectedHits.add(new SearchHit(QueryRunnerTestHelper.placementishDimension, "a", 93)); expectedHits.add(new SearchHit(QueryRunnerTestHelper.qualityDimension, "automotive", 93)); expectedHits.add(new SearchHit(QueryRunnerTestHelper.qualityDimension, "entertainment", 93)); expectedHits.add(new SearchHit(QueryRunnerTestHelper.qualityDimension, "health", 93)); expectedHits.add(new SearchHit(QueryRunnerTestHelper.qualityDimension, "mezzanine", 279)); expectedHits.add(new SearchHit(QueryRunnerTestHelper.marketDimension, "total_market", 186)); expectedHits.add(new SearchHit(QueryRunnerTestHelper.qualityDimension, "travel", 93)); expectedHits.add(new SearchHit(QueryRunnerTestHelper.partialNullDimension, "value", 186)); checkSearchQuery(searchQuery, expectedHits); }
@Test public void testSearchSameValueInMultiDims2() { SearchQuery searchQuery = Druids.newSearchQueryBuilder() .dataSource(QueryRunnerTestHelper.dataSource) .granularity(QueryRunnerTestHelper.allGran) .intervals(QueryRunnerTestHelper.fullOnIntervalSpec) .dimensions( Arrays.asList( QueryRunnerTestHelper.placementDimension, QueryRunnerTestHelper.placementishDimension ) ) .sortSpec(new SearchSortSpec(StringComparators.STRLEN)) .query("e") .build(); List<SearchHit> expectedHits = new ArrayList<>(); expectedHits.add(new SearchHit(QueryRunnerTestHelper.placementishDimension, "e", 93)); expectedHits.add(new SearchHit(QueryRunnerTestHelper.placementDimension, "preferred", 1209)); expectedHits.add(new SearchHit(QueryRunnerTestHelper.placementishDimension, "preferred", 1209)); checkSearchQuery(searchQuery, expectedHits); }
public static SearchQueryBuilder copy(SearchQuery query) { return new SearchQueryBuilder() .dataSource(query.getDataSource()) .filters(query.getDimensionsFilter()) .granularity(query.getGranularity()) .limit(query.getLimit()) .intervals(query.getQuerySegmentSpec()) .dimensions(query.getDimensions()) .query(query.getQuery()) .sortSpec(query.getSort()) .context(query.getContext()); }
public static SearchQueryBuilder copy(SearchQuery query) { return new SearchQueryBuilder() .dataSource(query.getDataSource()) .filters(query.getDimensionsFilter()) .granularity(query.getGranularity()) .limit(query.getLimit()) .intervals(query.getQuerySegmentSpec()) .dimensions(query.getDimensions()) .query(query.getQuery()) .sortSpec(query.getSort()) .context(query.getContext()); }