Class Predicate.Builder

java.lang.Object
io.bitbucket.dsmoons.odk.sql.query.builder.predicate.Predicate.Builder
Enclosing class:
Predicate

public static class Predicate.Builder extends Object
Класс с методами построения предиката запроса
  • Constructor Summary

    Constructors
    Constructor
    Description
    Конструктор
  • Method Summary

    Modifier and Type
    Method
    Description
    Метод заключает переданный предикат в круглые скобки
    Метод добавляет произвольное выражение как поле для продолжения построения предиката.
    Метод задает название поля для построения предиката
    Метод задает название поля для построения предиката
    field(String f, String tableAlias)
    Метод задает название поля для построения предиката
    not()
    Метод добавляет оператор NOT к предикату
    Метод добавляет значение (литерал) для продолжения построения предиката.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Builder

      public Builder()
      Конструктор
      Since:
      2.0.0
  • Method Details

    • field

      public Field field(String f, String tableAlias)
      Метод задает название поля для построения предиката
      Parameters:
      f - Название поля
      tableAlias - Псевдоним таблицы, заданный в операторе FROM или JOIN
      Returns:
      Объект Field для продолжения построения предиката
      Since:
      1.0.0
    • field

      public Field field(String f)
      Метод задает название поля для построения предиката
      Parameters:
      f - Название поля
      Returns:
      Объект Field для продолжения построения предиката
      Since:
      1.0.0
    • field

      public Field field(Field f)
      Метод задает название поля для построения предиката
      Parameters:
      f - Название поля
      Returns:
      Объект Field для продолжения построения предиката
      Since:
      1.0.0
    • brackets

      public Predicate brackets(Predicate p)

      Метод заключает переданный предикат в круглые скобки

      
        var q = select().from("table").where(
            field("a").equalTo(1).or()
                .brackets(field("b").isNotNull().and().field("c").like("c%"))
        );
        //  SELECT * FROM table WHERE a = 1 OR
        //      (b IS NOT NULL AND c LIKE 'c%')
       
      Parameters:
      p - Предикат запроса
      Returns:
      Объект Predicate для продолжения построения предиката
      Since:
      1.0.0
    • not

      public Predicate.Builder not()

      Метод добавляет оператор NOT к предикату

      
        field("f1").equalTo("www").and().not().field("f2").equalTo("qqq")
        // f1 = 'www' AND NOT f = 'qqq'
       
      Returns:
      Объект Predicate.Builder для продолжения построения предиката
      Since:
      1.5.0
    • expression

      public Field expression(String s)

      Метод добавляет произвольное выражение как поле для продолжения построения предиката.

      Переданная строка не заключается в одинарные кавычки.

      Parameters:
      s - Выражение
      Returns:
      Объект Field для продолжения построения предиката
      Since:
      1.5.0
    • value

      public Field value(Object v)

      Метод добавляет значение (литерал) для продолжения построения предиката.

      Литерал, не являющийся числом, оборачивается в одинарные скобки.

      Parameters:
      v - Литерал
      Returns:
      Объект Field для продолжения построения предиката
      Since:
      1.5.0