Package com.google.visualization.datasource.query

Examples of com.google.visualization.datasource.query.SimpleColumn


    Query q = new Query();

    // Add selection.
    QuerySelection selection = new QuerySelection();
    selection.addColumn(new ScalarFunctionColumn(
        Lists.newArrayList((AbstractColumn) new SimpleColumn("hireDate")),
        TimeComponentExtractor.getInstance(
            TimeComponentExtractor.TimeComponent.DAY)));
    selection.addColumn(new SimpleColumn("hireDate"));
    selection.addColumn(new SimpleColumn("age"));
    q.setSelection(selection);

    // Add sort.
    QuerySort sort = new QuerySort();
    sort.addSort(new ScalarFunctionColumn(
        Lists.newArrayList((AbstractColumn) new SimpleColumn("hireDate")),
        TimeComponentExtractor.getInstance(
            TimeComponentExtractor.TimeComponent.DAY)), SortOrder.ASCENDING);
    q.setSort(sort);

    q.validate();
View Full Code Here


   */
  public void testBuildSelectClause() {
    Query query = new Query();

    QuerySelection querySelection = new QuerySelection();
    querySelection.addColumn(new SimpleColumn("ID"));
    querySelection.addColumn(
        new AggregationColumn(new SimpleColumn("Salary"), AggregationType.MIN));
    query.setSelection(querySelection);
    StrBuilder queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendSelectClause(query, queryStringBuilder);
    assertEquals(queryStringBuilder.toString(), "SELECT `ID`, min(`Salary`) ",
        queryStringBuilder.toString());
View Full Code Here

    Query q = new Query();

    // Add selection.
    QuerySelection selection = new QuerySelection();
    AbstractColumn col1  = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(new SimpleColumn("hireDate")),
        TimeComponentExtractor.getInstance(
            TimeComponentExtractor.TimeComponent.DAY));
    AbstractColumn col2 = new SimpleColumn("age");
    AbstractColumn col3  = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(
            new SimpleColumn("seniorityStartTime")),
        TimeComponentExtractor.getInstance(
            TimeComponentExtractor.TimeComponent.HOUR));
    AbstractColumn col4 = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(col2, col3), Product.getInstance());
    AbstractColumn col5 = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(col1, col4), Sum.getInstance());
    selection.addColumn(col5);
    selection.addColumn(new SimpleColumn("age"));
    q.setSelection(selection);
    q.validate();

    DataTable result = QueryEngine.executeQuery(q, res, ULocale.US);
View Full Code Here

   * Tests the building of the SQL query WHERE clause from the Gviz query.
   */
  public void testBuildWhereClause() {
    Query query = new Query();

    QueryFilter queryFilter1 = new ColumnColumnFilter(new SimpleColumn("ID"),
        new SimpleColumn("Salary"), ComparisonFilter.Operator.EQ);
    QueryFilter queryFilter2 = new ColumnValueFilter(new SimpleColumn("ID"),
        new NumberValue(1), ComparisonFilter.Operator.GE);
    QueryFilter queryFilter3 = new ColumnValueFilter(new SimpleColumn("Fname"),
        new TextValue("Mi"), ComparisonFilter.Operator.STARTS_WITH);
    QueryFilter queryFilter4 = new ColumnValueFilter(new SimpleColumn("Lname"),
        new TextValue("SH"), ComparisonFilter.Operator.CONTAINS);
     QueryFilter queryFilter5 = new ColumnValueFilter(new SimpleColumn("Lname"),
        new TextValue("tz"), ComparisonFilter.Operator.ENDS_WITH);
    List<QueryFilter> subFiltersList1 = Lists.newArrayList();
    subFiltersList1.add(queryFilter1);
    subFiltersList1.add(queryFilter2);
    QueryFilter queryCompoundFilter1 =
        new CompoundFilter(CompoundFilter.LogicalOperator.AND, subFiltersList1);
    List<QueryFilter> subFiltersList2 = Lists.newArrayList();
    subFiltersList2.add(queryFilter3);
    subFiltersList2.add(queryFilter4);
    subFiltersList2.add(queryFilter5);
    QueryFilter queryCompoundFilter2 =
        new CompoundFilter(CompoundFilter.LogicalOperator.AND, subFiltersList2);
    List<QueryFilter> subFiltersList3 = Lists.newArrayList();
    subFiltersList3.add(queryCompoundFilter1);
    subFiltersList3.add(queryCompoundFilter2);
    QueryFilter queryCompoundFilter3 =
        new CompoundFilter(CompoundFilter.LogicalOperator.OR, subFiltersList3);
    query.setFilter(queryCompoundFilter3);
    StrBuilder queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals(queryStringBuilder.toString(),
        "WHERE (((`ID`=`Salary`) AND (`ID`>=1.0)) OR ((`Fname` LIKE \"Mi%\") "
        + "AND (`Lname` LIKE \"%SH%\") AND (`Lname` LIKE \"%tz\"))) ",
        queryStringBuilder.toString());

    // Check empty compound filters.
    List<QueryFilter> subFiltersList4 = Lists.newArrayList();
    QueryFilter queryCompoundFilter4 =
        new CompoundFilter(CompoundFilter.LogicalOperator.OR, subFiltersList4);
    query.setFilter(queryCompoundFilter4);
    queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals(queryStringBuilder.toString(), "WHERE false ");
    QueryFilter queryCompoundFilter5 =
        new CompoundFilter(CompoundFilter.LogicalOperator.AND, subFiltersList4);
    query.setFilter(queryCompoundFilter5);
    queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals(queryStringBuilder.toString(), "WHERE true ");

    // Check compound filter with one sub-filter.
    List<QueryFilter> subFiltersList6 = Lists.newArrayList(
        (QueryFilter) new ColumnColumnFilter(new SimpleColumn("ID"),
        new SimpleColumn("Salary"), ComparisonFilter.Operator.EQ));
    QueryFilter queryCompoundFilter6 =
        new CompoundFilter(CompoundFilter.LogicalOperator.OR, subFiltersList6);
    query.setFilter(queryCompoundFilter6);
    queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals(queryStringBuilder.toString(), "WHERE ((`ID`=`Salary`)) ",
        queryStringBuilder.toString());
   
    // Check "is null".
    ColumnIsNullFilter isNullFilter = new ColumnIsNullFilter(new SimpleColumn("ID"));
    query.setFilter(isNullFilter);
    queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals("WHERE (`ID` IS NULL) ", queryStringBuilder.toString());

    // Check negation.
    NegationFilter negationFilter =
        new NegationFilter(new ColumnColumnFilter(new SimpleColumn("ID"),
        new SimpleColumn("Salary"), ComparisonFilter.Operator.EQ));
    query.setFilter(negationFilter);
    queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals("WHERE (NOT (`ID`=`Salary`)) ", queryStringBuilder.toString());
  }
View Full Code Here

   * Tests the building of the SQL query GROUP BY clause from the Gviz query.
   */
  public void testBuildGroupByClause() {
    Query query =  new Query();
    QueryGroup queryGroup = new QueryGroup();
    queryGroup.addColumn(new SimpleColumn("ID"));
    queryGroup.addColumn(new SimpleColumn("FNAME"));
    query.setGroup(queryGroup);
    StrBuilder queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendGroupByClause(query, queryStringBuilder);
    assertEquals("GROUP BY `ID`, `FNAME` ", queryStringBuilder.toString());
  }
View Full Code Here

    // select sum(age), day(hireDate) - hour(seniorityStartTime)
    // group by day(hireDate) - hour(seniorityStartTime)
    Query q = new Query();

    AbstractColumn col1  = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(new SimpleColumn("hireDate")),
        TimeComponentExtractor.getInstance(
            TimeComponentExtractor.TimeComponent.DAY));
    AbstractColumn col2  = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(
            new SimpleColumn("seniorityStartTime")),
        TimeComponentExtractor.getInstance(
            TimeComponentExtractor.TimeComponent.HOUR));
    AbstractColumn col3 = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(col1, col2),
        Difference.getInstance());

    // Add selection
    QuerySelection selection = new QuerySelection();
    selection.addColumn(new AggregationColumn(new SimpleColumn("age"),
        AggregationType.SUM));
    selection.addColumn(col3);
    q.setSelection(selection);

    // Add group
View Full Code Here

   */
  public void testBuildOrderByClause() {
    Query query = new Query();
    QuerySort querySort = new QuerySort();
    AggregationColumn column1 =
        new AggregationColumn(new SimpleColumn("ID"), AggregationType.COUNT);
    SimpleColumn column2 = new SimpleColumn("FNAME");
    querySort.addSort(column1, SortOrder.DESCENDING);
    querySort.addSort(column2, SortOrder.ASCENDING);
    query.setSort(querySort);
    StrBuilder queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendOrderByClause(query, queryStringBuilder);
View Full Code Here

    // day(hireDate) - hour(seniorityStartTime) < -5
    // group by day(hireDate) - hour(seniorityStartTime)
    Query q = new Query();

    AbstractColumn col1  = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(new SimpleColumn("hireDate")),
        TimeComponentExtractor.getInstance(
            TimeComponentExtractor.TimeComponent.DAY));
    AbstractColumn col2  = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(
            new SimpleColumn("seniorityStartTime")),
        TimeComponentExtractor.getInstance(
            TimeComponentExtractor.TimeComponent.HOUR));
    AbstractColumn col3 = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(col1, col2),
        Difference.getInstance());
View Full Code Here

    Query q = new Query();

    AbstractColumn col1 = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(), new Constant(new NumberValue(10)));
    AbstractColumn col2 = new ScalarFunctionColumn(
        Lists.<AbstractColumn>newArrayList(new SimpleColumn("weight"), col1),
        Modulo.getInstance());

    // Add selection
    QuerySelection selection = new QuerySelection();
    selection.addColumn(new SimpleColumn("weight"));
    selection.addColumn(col2);
    q.setSelection(selection);
   
    q.validate();
View Full Code Here

    // select name, weight where weight%2=0.0
    Query q = new Query();

    // Add selection
    QuerySelection selection = new QuerySelection();
    selection.addColumn(new SimpleColumn("name"));
    selection.addColumn(new SimpleColumn("weight"));
    q.setSelection(selection);

    AbstractColumn col1 = new ScalarFunctionColumn(
      Lists.<AbstractColumn>newArrayList(), new Constant(new NumberValue(2)));
    AbstractColumn col2 = new ScalarFunctionColumn(
      Lists.<AbstractColumn>newArrayList(new SimpleColumn("weight"), col1),
      Modulo.getInstance());

    QueryFilter filter = new ColumnValueFilter(col2,
      new NumberValue(0), ComparisonFilter.Operator.EQ);
    q.setFilter(filter);
View Full Code Here

TOP

Related Classes of com.google.visualization.datasource.query.SimpleColumn

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.