【发布时间】:2021-02-03 23:52:02
【问题描述】:
我必须使用 knex 在whereIn 中使用LOWER 函数。
我想更改下面的代码行
whereIn("name", members);
如果我执行whereIn('LOWER("name")', members);,则会出现错误
Column LOWER("name") is not present.
我尝试使用 knex.raw 但又没有得到正确的语法。
const roleMembers = await t("roles")
.select({ role_id: "id" }, "name")
.whereIn(t.raw("LOWER('name')"), members);
当我尝试添加 await 时,语法错误消失,但是当我执行此代码时,我得到以下错误
错误:LOWER(name) - syntax error at or near "LOWER"
我指的是http://knexjs.org/#Builder-whereIn
我们有whereRaw,whereIn 有类似的东西吗?需要一些帮助来解决此问题。
注意:我用的都是LOWER、lower、Lower。
【问题讨论】:
-
如果你这样做
whereIn("lower(name)", members);怎么办?
标签: javascript sql node.js postgresql knex.js