因此,我使用Knex.JS作为我的数据库。我想要将低位输入与低位字段值进行比较。我认为我可以knex.raw它,但显然我的脚本崩溃时,我尝试它。有没有人用Knex.JS中的小写数值成功地做过LIKE比较?如果你做到了,你是怎么做到的?
我们将一如既往地非常感谢您的帮助。
function findUsers(q) {
return db("users")
.where(
knex.raw(`'LOWER("firstname")', "like", %${q.toLowerCase()}%`, "knex")
)
.orWhere("lastname", "like", `%${q}%`)
.orWhere("username", "like", `%${q}%`)
.orWhere("email", "like", `%${q}%`);
}
发布于 2021-06-23 10:54:14
您可以只将值包装在lower()中,如下所示:
function findUsers(q) {
return db('users')
.where(knex.raw('lower("firstname")'), 'like', `%${q.toLowerCase()}%`)
.orWhere(knex.raw('lower("lastname")'), 'like', `%${q}%`)
.orWhere(knex.raw('lower("username")'), 'like', `%${q}%`)
.orWhere(knex.raw('lower("email")'), 'like', `%${q}%`);
}https://stackoverflow.com/questions/68092928
复制相似问题