有没有办法向 knex 返回或 select 方法添加函数调用?
Is there a way to add function calls to knex returning or select methods?
我正在尝试将方法调用 ST_ASText 添加到地理列以将其转换回 wkt。所以我尝试做这样的事情。
activeTrx(TABLE_NAME)
.returning(['id', 'ST_AsText(polygon_wkt)')
.insert(values);
Afaik 应该可以,但您需要使用 knex.raw
activeTrx(TABLE_NAME)
.returning([
'id',
knex.raw('ST_AsText(??)', ['polygon_wkt'])
])
.insert(values);
我最终做了这样的事情。这有效。
activeTrx
.raw(
`?
RETURNING id, ST_AsText(polygon_wkt) as polygon_wkt;`,
[activeTrx.table(TABLE_NAME).insert(values)],
)
.then((result) => {
return result.rows;
});
我正在尝试将方法调用 ST_ASText 添加到地理列以将其转换回 wkt。所以我尝试做这样的事情。
activeTrx(TABLE_NAME)
.returning(['id', 'ST_AsText(polygon_wkt)')
.insert(values);
Afaik 应该可以,但您需要使用 knex.raw
activeTrx(TABLE_NAME)
.returning([
'id',
knex.raw('ST_AsText(??)', ['polygon_wkt'])
])
.insert(values);
我最终做了这样的事情。这有效。
activeTrx
.raw(
`?
RETURNING id, ST_AsText(polygon_wkt) as polygon_wkt;`,
[activeTrx.table(TABLE_NAME).insert(values)],
)
.then((result) => {
return result.rows;
});