public String getFormattedFilter(String tableName) { return getFormattedFilter(partCol, tableName); }
public String getFormattedFilter(String tableName) { return getFormattedFilter(partCol, tableName); }
public String getFormattedFilter(String partCol, String tableName) { StringBuilder builder = new StringBuilder(); if (containingPart != null) { builder.append(containingPart.getFormattedFilter(tableName)); builder.append(" AND "); } if (tableName != null) { builder.append(tableName); builder.append("."); } builder.append(partCol); builder.append(" = '").append(getFormattedPartSpec()).append("'"); return builder.toString(); }
public String getFormattedFilter(String partCol, String tableName) { StringBuilder builder = new StringBuilder(); if (containingPart != null) { builder.append(containingPart.getFormattedFilter(tableName)); builder.append(" AND "); } if (tableName != null) { builder.append(tableName); builder.append("."); } builder.append(partCol); builder.append(" = '").append(getFormattedPartSpec()).append("'"); return builder.toString(); }
public static String getTimeRangePartitionFilter(FactPartition partition, CubeQueryContext cubeQueryContext, String tableName) { String partCol = partition.getPartCol(); String partFilter; if (cubeQueryContext != null && !cubeQueryContext.shouldReplaceTimeDimWithPart()) { String replacedPartCol = cubeQueryContext.getTimeDimOfPartitionColumn(partCol); if (!partCol.equalsIgnoreCase(replacedPartCol)) { partFilter = partition.getFormattedFilter(replacedPartCol, tableName); } else { partFilter = partition.getFormattedFilter(tableName); } } else { partFilter = partition.getFormattedFilter(tableName); } return partFilter; } }
public static String getTimeRangePartitionFilter(FactPartition partition, CubeQueryContext cubeQueryContext, String tableName) { String partCol = partition.getPartCol(); String partFilter; if (cubeQueryContext != null && !cubeQueryContext.shouldReplaceTimeDimWithPart()) { String replacedPartCol = cubeQueryContext.getTimeDimOfPartitionColumn(partCol); if (!partCol.equalsIgnoreCase(replacedPartCol)) { partFilter = partition.getFormattedFilter(replacedPartCol, tableName); } else { partFilter = partition.getFormattedFilter(tableName); } } else { partFilter = partition.getFormattedFilter(tableName); } return partFilter; } }
@Test public void testGetFormattedFilter() throws Exception { String dailyFormat = DAILY.format(DATE); String hourlyFormat = HOURLY.format(DATE); assertEquals(fp1.getFormattedFilter("table"), "table.p = '" + dailyFormat + "'"); assertEquals(fp2.getFormattedFilter("table2"), "table2.p = '" + dailyFormat + "' AND table2.q = '" + hourlyFormat + "'"); }