Package org.codehaus.jparsec.examples.sql.ast

Examples of org.codehaus.jparsec.examples.sql.ast.Select


  }
 
  public void testSelect() {
    Parser<Relation> parser = RelationParser.select(NUMBER, NUMBER, TABLE);
    assertParser(parser, "select distinct 1, 2 as id from t1, t2",
        new Select(true,
            Arrays.asList(new Projection(number(1), null), new Projection(number(2), "id")),
            Arrays.asList(table("t1"), table("t2")),
            null, null, null));
    assertParser(parser, "select 1 as id from t where 1",
        new Select(false,
            Arrays.asList(new Projection(number(1), "id")),
            Arrays.asList(table("t")),
            number(1), null, null));
    assertParser(parser, "select 1 as id from t group by 2, 3",
        new Select(false,
            Arrays.asList(new Projection(number(1), "id")),
            Arrays.asList(table("t")),
            null, new GroupBy(Arrays.asList(number(2), number(3)), null), null));
    assertParser(parser, "select 1 as id from t group by 2, 3 having 4",
        new Select(false,
            Arrays.asList(new Projection(number(1), "id")),
            Arrays.asList(table("t")),
            null, new GroupBy(Arrays.asList(number(2), number(3)), number(4)), null));
    assertParser(parser, "select 1 as id from t order by 2 asc, 3 desc",
        new Select(false,
            Arrays.asList(new Projection(number(1), "id")),
            Arrays.asList(table("t")),
            null, null, new OrderBy(Arrays.asList(
                new OrderBy.Item(number(2), true), new OrderBy.Item(number(3), false)))));
  }
View Full Code Here


  }
 
  public void testQuery() {
    Parser<Relation> parser = RelationParser.query(NUMBER, NUMBER, TABLE);
    assertParser(parser, "select 1 from t",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.asList(table("t")),
            null, null, null));
    assertParser(parser, "select 1 from a union select distinct 2 from b",
        new UnionRelation(
            new Select(false,
                Arrays.asList(new Projection(number(1), null)),
                Arrays.asList(table("a")),
                null, null, null),
            false,
             new Select(true,
                Arrays.asList(new Projection(number(2), null)),
                Arrays.asList(table("b")),
                null, null, null)));
  }
View Full Code Here

  }
 
  public void testCompleteQuery() {
    Parser<Relation> parser = RelationParser.query();
    assertParser(parser, "select 1 from t",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.asList(table("t")),
            null, null, null));
    assertParser(parser, "select 1 from (select * from table) t",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.<Relation>asList(new AliasedRelation(
                new Select(false,
                    Arrays.asList(new Projection(ExpressionParserTest.wildcard(), null)),
                    Arrays.asList(table("table")),
                    null, null, null),
                "t")),
            null, null, null));
    assertParser(parser, "select 1 from t where x > 1",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.asList(table("t")),
            new BinaryExpression(ExpressionParserTest.name("x"), Op.GT, number(1)), null, null));
    assertParser(parser, "select 1 from t where exists (select * from t2)",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.asList(table("t")),
            new UnaryRelationalExpression(
                new Select(false,
                    Arrays.asList(new Projection(ExpressionParserTest.wildcard(), null)),
                    Arrays.asList(table("t2")),
                    null, null, null),
                Op.EXISTS), null, null));
    assertParser(parser, "select case when exists (select * from t1) then 1 end from t",
        new Select(false,
            Arrays.asList(new Projection(
                ExpressionParserTest.fullCase(new UnaryRelationalExpression(
                    new Select(false,
                        Arrays.asList(new Projection(ExpressionParserTest.wildcard(), null)),
                        Arrays.asList(table("t1")),
                        null, null, null), Op.EXISTS), number(1), null),
                    null)),
            Arrays.asList(table("t")),
View Full Code Here

  @Test
  public void testSelect() {
    Parser<Relation> parser = RelationParser.select(NUMBER, NUMBER, TABLE);
    assertParser(parser, "select distinct 1, 2 as id from t1, t2",
        new Select(true,
            Arrays.asList(new Projection(number(1), null), new Projection(number(2), "id")),
            Arrays.asList(table("t1"), table("t2")),
            null, null, null));
    assertParser(parser, "select 1 as id from t where 1",
        new Select(false,
            Arrays.asList(new Projection(number(1), "id")),
            Arrays.asList(table("t")),
            number(1), null, null));
    assertParser(parser, "select 1 as id from t group by 2, 3",
        new Select(false,
            Arrays.asList(new Projection(number(1), "id")),
            Arrays.asList(table("t")),
            null, new GroupBy(Arrays.asList(number(2), number(3)), null), null));
    assertParser(parser, "select 1 as id from t group by 2, 3 having 4",
        new Select(false,
            Arrays.asList(new Projection(number(1), "id")),
            Arrays.asList(table("t")),
            null, new GroupBy(Arrays.asList(number(2), number(3)), number(4)), null));
    assertParser(parser, "select 1 as id from t order by 2 asc, 3 desc",
        new Select(false,
            Arrays.asList(new Projection(number(1), "id")),
            Arrays.asList(table("t")),
            null, null, new OrderBy(Arrays.asList(
                new OrderBy.Item(number(2), true), new OrderBy.Item(number(3), false)))));
  }
View Full Code Here

  @Test
  public void testQuery() {
    Parser<Relation> parser = RelationParser.query(NUMBER, NUMBER, TABLE);
    assertParser(parser, "select 1 from t",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.asList(table("t")),
            null, null, null));
    assertParser(parser, "select 1 from a union select distinct 2 from b",
        new UnionRelation(
            new Select(false,
                Arrays.asList(new Projection(number(1), null)),
                Arrays.asList(table("a")),
                null, null, null),
            false,
             new Select(true,
                Arrays.asList(new Projection(number(2), null)),
                Arrays.asList(table("b")),
                null, null, null)));
  }
View Full Code Here

  @Test
  public void testCompleteQuery() {
    Parser<Relation> parser = RelationParser.query();
    assertParser(parser, "select 1 from t",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.asList(table("t")),
            null, null, null));
    assertParser(parser, "select 1 from (select * from table) t",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.<Relation>asList(new AliasedRelation(
                new Select(false,
                    Arrays.asList(new Projection(ExpressionParserTest.wildcard(), null)),
                    Arrays.asList(table("table")),
                    null, null, null),
                "t")),
            null, null, null));
    assertParser(parser, "select 1 from t where x > 1",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.asList(table("t")),
            new BinaryExpression(ExpressionParserTest.name("x"), Op.GT, number(1)), null, null));
    assertParser(parser, "select 1 from t where exists (select * from t2)",
        new Select(false,
            Arrays.asList(new Projection(number(1), null)),
            Arrays.asList(table("t")),
            new UnaryRelationalExpression(
                new Select(false,
                    Arrays.asList(new Projection(ExpressionParserTest.wildcard(), null)),
                    Arrays.asList(table("t2")),
                    null, null, null),
                Op.EXISTS), null, null));
    assertParser(parser, "select case when exists (select * from t1) then 1 end from t",
        new Select(false,
            Arrays.asList(new Projection(
                ExpressionParserTest.fullCase(new UnaryRelationalExpression(
                    new Select(false,
                        Arrays.asList(new Projection(ExpressionParserTest.wildcard(), null)),
                        Arrays.asList(table("t1")),
                        null, null, null), Op.EXISTS), number(1), null),
                    null)),
            Arrays.asList(table("t")),
View Full Code Here

TOP

Related Classes of org.codehaus.jparsec.examples.sql.ast.Select

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.