Javascript 如何在knex.js中组合列

Javascript 如何在knex.js中组合列,javascript,knex.js,Javascript,Knex.js,我如何在knexjs中编写选择firstName | |'| | lastName作为name。以这种方式使用raw.columns(knex.raw(“fname | |‘|‘| | lname as name”)有效,但还有其他方法吗?您也可以将其合并到代码本身中,为什么要将其合并到查询中,而同样的工作可以与查询结果内联完成呢。在这一点上阅读起来会更容易,在分发之前,您可以对字符串执行其他操作 PS:您确实问过“还有其他方法吗?”我想在SQL层本身完成它,而不是在结果上运行更多的循环。然后您

我如何在knexjs中编写
选择firstName | |'| | lastName作为name
。以这种方式使用raw
.columns(knex.raw(“fname | |‘|‘| | lname as name”)
有效,但还有其他方法吗?

您也可以将其合并到代码本身中,为什么要将其合并到查询中,而同样的工作可以与查询结果内联完成呢。在这一点上阅读起来会更容易,在分发之前,您可以对字符串执行其他操作


PS:您确实问过“还有其他方法吗?”

我想在SQL层本身完成它,而不是在结果上运行更多的循环。然后您就正确地完成了,因为您是在SQL层完成的,这正是我必须在命令行上的原始SQL中完成的。但遗憾的是,原始查询将特定于单个数据库,将字符串连接在一起的方法是基于sqlite的,这在其他DB服务器中可能无效。这是一些人关心的问题,但正如您将在knex周围的其他帖子中看到的,这不是它的目的。你应该用更高级的语言进行查询和操作结果。如果你想对多个列的连接进行排序……列之间的唯一区别是集中的内容,如果你只是“按列1、列2排序,…”。这也取决于使用情况。不过,这个回答更离题,问题是如何组合多个列,而不是如何按多个列排序。此外,您还可以使用更高级的语言进行排序,除非您正在进行分页。