【发布时间】:2018-07-30 14:37:08
【问题描述】:
要在 PostgreSQL 查询中获取单个元素,我们可以这样做
SELECT pay_by_quarter[3] FROM sal_emp;
或者在有条件的情况下,
SELECT * FROM sal_emp WHERE pay_by_quarter[1] = 10000
如果可能的话,我怎样才能在 JOOQ 中实现同样的目标。
谢谢!
【问题讨论】:
标签: postgresql jooq
要在 PostgreSQL 查询中获取单个元素,我们可以这样做
SELECT pay_by_quarter[3] FROM sal_emp;
或者在有条件的情况下,
SELECT * FROM sal_emp WHERE pay_by_quarter[1] = 10000
如果可能的话,我怎样才能在 JOOQ 中实现同样的目标。
谢谢!
【问题讨论】:
标签: postgresql jooq
有一个待处理的功能请求允许通过 jOOQ API 按索引引用数组元素:https://github.com/jOOQ/jOOQ/issues/229
解决方法是使用plain SQL templating:
public static <T> Field<T> get(Field<T[]> field, int index) {
return (Field) DSL.field(
"{0}[{1}]",
field.getDataType().getType().getComponentType(),
val(index)
);
}
【讨论】: