Package com.avaje.ebean.RawSql

Examples of com.avaje.ebean.RawSql.Sql


  @Test
  public void testSimple() {

    RawSqlBuilder r = RawSqlBuilder.parse("select id from t_cust");
    Sql sql = r.getSql();
    Assert.assertEquals("id", sql.getPreFrom());
    Assert.assertEquals("from t_cust", sql.getPreWhere());
    Assert.assertEquals("", sql.getPreHaving());
    Assert.assertNull(sql.getOrderBy());

  }
View Full Code Here


  @Test
  public void testWithWhere() {

    RawSqlBuilder r = RawSqlBuilder.parse("select id from t_cust where id > ?");
    Sql sql = r.getSql();
    Assert.assertEquals("id", sql.getPreFrom());
    Assert.assertEquals("from t_cust where id > ?", sql.getPreWhere());
    Assert.assertEquals("", sql.getPreHaving());
    Assert.assertNull(sql.getOrderBy());
  }
View Full Code Here

  @Test
  public void testWithOrder() {

    RawSqlBuilder r = RawSqlBuilder.parse("select id from t_cust where id > ? order by id desc");
    Sql sql = r.getSql();
    Assert.assertEquals("id", sql.getPreFrom());
    Assert.assertEquals("from t_cust where id > ?", sql.getPreWhere());
    Assert.assertEquals("", sql.getPreHaving());
    Assert.assertEquals("id desc", sql.getOrderBy());

    r = RawSqlBuilder.parse("select id from t_cust order by id desc");
    sql = r.getSql();
    Assert.assertEquals("id", sql.getPreFrom());
    Assert.assertEquals("from t_cust", sql.getPreWhere());
    Assert.assertEquals("", sql.getPreHaving());
    Assert.assertEquals("id desc", sql.getOrderBy());

    r = RawSqlBuilder
        .parse("select id, sum(x) from t_cust where id > ? group by id order by id desc");
    sql = r.getSql();
    Assert.assertEquals("id, sum(x)", sql.getPreFrom());
    Assert.assertEquals("from t_cust where id > ?", sql.getPreWhere());
    Assert.assertEquals("group by id", sql.getPreHaving());
    Assert.assertEquals("id desc", sql.getOrderBy());
  }
View Full Code Here

  @Test
  public void testWithHaving() {

    RawSqlBuilder r = RawSqlBuilder
        .parse("select id, sum(x) from t_cust where id > ? group by id having sum(x) > ? order by id desc");
    Sql sql = r.getSql();
    Assert.assertEquals("id, sum(x)", sql.getPreFrom());
    Assert.assertEquals("from t_cust where id > ?", sql.getPreWhere());
    Assert.assertEquals("group by id having sum(x) > ?", sql.getPreHaving());
    Assert.assertEquals("id desc", sql.getOrderBy());

    // no where
    r = RawSqlBuilder
        .parse("select id, sum(x) from t_cust group by id having sum(x) > ? order by id desc");
    sql = r.getSql();
    Assert.assertEquals("id, sum(x)", sql.getPreFrom());
    Assert.assertEquals("from t_cust", sql.getPreWhere());
    Assert.assertEquals("group by id having sum(x) > ?", sql.getPreHaving());
    Assert.assertEquals("id desc", sql.getOrderBy());

    // no where, no order by
    r = RawSqlBuilder.parse("select id, sum(x) from t_cust group by id having sum(x) > ?");
    sql = r.getSql();
    Assert.assertEquals("id, sum(x)", sql.getPreFrom());
    Assert.assertEquals("from t_cust", sql.getPreWhere());
    Assert.assertEquals("group by id having sum(x) > ?", sql.getPreHaving());
    Assert.assertNull(sql.getOrderBy());

    // no order by
    r = RawSqlBuilder
        .parse("select id, sum(x) from t_cust where id > ? group by id having sum(x) > ?");
    sql = r.getSql();
    Assert.assertEquals("id, sum(x)", sql.getPreFrom());
    Assert.assertEquals("from t_cust where id > ?", sql.getPreWhere());
    Assert.assertEquals("group by id having sum(x) > ?", sql.getPreHaving());
    Assert.assertNull(sql.getOrderBy());
  }
View Full Code Here

public class TestRawSqlBuilderDistinct extends TestCase {

  public void testDistinct() {

    RawSqlBuilder r = RawSqlBuilder.parse("select distinct id, name from t_cust");
    Sql sql = r.getSql();
    Assert.assertEquals("id, name", sql.getPreFrom());
    Assert.assertEquals("from t_cust", sql.getPreWhere());
    Assert.assertEquals("", sql.getPreHaving());
    Assert.assertNull(sql.getOrderBy());

  }
View Full Code Here

            .parse(sql)
            .columnMapping("order_id","order.id")
            //.columnMapping("sum(order_qty*unit_price)","totalAmount")
            .create();
           
        Sql rs = rawSql.getSql();
       
        String s = rs.toString();
        System.out.println(s);
        assertTrue(s, s.contains("[order_id, sum"));
       
    }
View Full Code Here

   * modified - so no additional WHERE or HAVING expressions can be added to
   * this query.
   */
  public static RawSqlBuilder unparsed(String sql) {

    Sql s = new Sql(sql);
    return new RawSqlBuilder(s, new ColumnMapping());
  }
View Full Code Here

   * correct column names are entered into the mapping.
   * </p>
   */
  public static RawSqlBuilder parse(String sql) {

    Sql sql2 = DRawSqlParser.parse(sql);
    String select = sql2.getPreFrom();

    ColumnMapping mapping = DRawSqlColumnsParser.parse(select);
    return new RawSqlBuilder(sql2, mapping);
  }
View Full Code Here

    String preHaving = removeWhitespace(findPreHavingSql());
    String orderBySql = findOrderBySql();

    preFrom = trimSelectKeyword(preFrom);

    return new Sql(sql.hashCode(), preFrom, preWhere, whereExprAnd, preHaving, havingExprAnd,
        orderBySql, (distinctPos > -1));
  }
View Full Code Here

   * modified - so no additional WHERE or HAVING expressions can be added to
   * this query.
   */
  public static RawSqlBuilder unparsed(String sql) {

    Sql s = new Sql(sql);
    return new RawSqlBuilder(s, new ColumnMapping());
  }
View Full Code Here

TOP

Related Classes of com.avaje.ebean.RawSql.Sql

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.