可用于在查询中创建引用,例如列名或表名。这是替代使用的好方法knex.raw('??', 'tableName.columName') which essentially does the same thing.
用法:
knex.ref可以在构建链中的任何地方使用。这是一个例子:
knex(knex.ref('Users').withSchema('TenantId'))
.where(knex.ref('Id'), 1)
.orWhere(knex.ref('Name'), 'Admin')
.select(['Id', knex.ref('Name').as('Username')])
输出:
select `Id`, `Name` as `Username` from `TenantId`.`Users` where `Id` = 1 or `Name` = 'Admin'
withSchema:
Ref函数支持使用.withSchema(string)以下模式:
knex(knex.ref('users').withSchema('TenantId')).select()
输出:
select * from `TenantId`.`users`
别名:
支持使用别名 .alias(string)
knex('users')
.select(knex.ref('Id').as('UserId'))
输出:
select `Id` as `UserId` from `users`