Сумма нескольких столбцов с использованием jooq и объединение с другой таблицей - PullRequest
0 голосов
/ 15 декабря 2018

У меня есть сценарий, в котором я должен найти сумму нескольких столбцов из таблицы 2, и у меня есть значение в предложении where из другой таблицы 1.

Я написал запрос mySql для того же, что и ниже.Мне нужно написать это в Jooq.

select (sum(t2.column1)+sum(t2.column2)+sum(t2.column3)) as total_amount 
from db.table1 t1, db.table2 t2 
where t1.column1 = ‘value1’ and t1.column2 = t2.column4;

1 Ответ

0 голосов
/ 17 декабря 2018

Как общее практическое правило, все функции доступны из org.jooq.impl.DSL с тем же именем, а все операторы доступны из org.jooq.Field по имени, которое отражаетспособ оператора произносится.В вашем случае используйте:

В частности,при условии статического импорта:

import static org.jooq.impl.DSL.*;

Запись:

Table1 t1 = TABLE1.as("t1");
Table2 t2 = TABLE2.as("t2");
ctx.select(sum(t2.COLUMN1).plus(sum(t2.COLUMN2)).plus(t2.COLUMN3)).as("total_amount"))
   .from(t1, t2)
   .where(t1.COLUMN1.eq("value1"))
   .and(t1.COLUMN2.eq(t2.COLUMN4))
   .fetch();
...