Class PredicateObject.CaseObject
java.lang.Object
io.bitbucket.dsmoons.odk.sql.query.builder.PredicateObject.CaseObject
- Enclosing class:
PredicateObject
Объект с методами построения выражения CASE.
Простое выражение:
var category = caseExpression("ProductLine")
.when("R").then("Road")
.when("M").then("Mountain")
.when("T").then("Touring")
.when("S").then("Other sale items")
.elseExpression("Not for sale")
.end("Category");
var categoryQuery = select("ProductNumber", "Name", category).from("Product");
SELECT ProductNumber, Name,
CASE ProductLine
WHEN 'R' THEN 'Road'
WHEN 'M' THEN 'Mountain'
WHEN 'T' THEN 'Touring'
WHEN 'S' THEN 'Other sale items'
ELSE 'Not for sale'
END AS Category
FROM Product
Поисковое выражение:
var priceRange = caseExpression()
.when(field("ListPrice").equalTo(0)).then("Item not for resale")
.when(field("ListPrice").lessThan(50)).then("Under 50")
.when(field("ListPrice").greaterThanOrEqualTo(50).and().field("ListPrice").lessThan(250)).then("Under 250")
.when(field("ListPrice").greaterThanOrEqualTo(250).and().field("ListPrice").lessThan(1000)).then("Under 1000")
.elseExpression("Over 1000")
.end("PriceRange");
var priceRangeQuery = select("ProductNumber", "Name", priceRange).from("Product");
SELECT ProductNumber, Name,
CASE
WHEN ListPrice = 0 THEN 'Item not for resale'
WHEN ListPrice < 50 THEN 'Under 50'
WHEN ListPrice >= 50 AND ListPrice < 250 THEN 'Under 250'
WHEN ListPrice >= 250 AND ListPrice < 1000 THEN 'Under 1000'
ELSE 'Over 1000'
END AS PriceRange
FROM Product
-
Method Summary
Modifier and TypeMethodDescriptionstatic Case.CaseWhenМетод добавляет оператор CASE для построения поискового выражения CASEstatic Case.CaseWhenМетод добавляет оператор CASE и название поля для построения простого выражения CASEstatic Case.CaseWhenМетод добавляет оператор CASE и название поля для построения простого выражения CASE
-
Method Details
-
caseExpression
Метод добавляет оператор CASE для построения поискового выражения CASE- Returns:
- Объект
Case.CaseWhenдля продолжения построения выражения - Since:
- 1.4.0
- See Also:
-
caseExpression
Метод добавляет оператор CASE и название поля для построения простого выражения CASE- Parameters:
f- Поле- Returns:
- Объект
Case.CaseWhenдля продолжения построения выражения - Since:
- 1.4.0
- See Also:
-
caseExpression
Метод добавляет оператор CASE и название поля для построения простого выражения CASE- Parameters:
f- Поле- Returns:
- Объект
Case.CaseWhenдля продолжения построения выражения - Since:
- 1.6.0
- See Also:
-