在使用 Knex 切换 Postgres 表中的布尔值时,可以通过以下步骤实现:
pg
)。const knex = require('knex')({
client: 'pg',
connection: {
host: 'your_host',
user: 'your_username',
password: 'your_password',
database: 'your_database',
},
});
knex.raw()
方法来执行原始的 SQL 查询。在查询中使用 CASE
语句来切换布尔值。例如,以下代码将 is_active
字段的布尔值取反:knex('your_table')
.update({
is_active: knex.raw('NOT is_active'),
})
.where('id', '=', your_record_id)
.then(() => {
console.log('布尔值已成功切换!');
})
.catch((error) => {
console.error('切换布尔值时出错:', error);
});
在上述代码中,your_table
是要更新的表名,is_active
是要切换的布尔字段名,your_record_id
是要更新的记录的 ID。
.where()
方法添加额外的条件:knex('your_table')
.update({
is_active: knex.raw('NOT is_active'),
})
.where('id', '=', your_record_id)
.andWhere('created_at', '>', your_date)
.then(() => {
console.log('布尔值已成功切换!');
})
.catch((error) => {
console.error('切换布尔值时出错:', error);
});
在上述代码中,.andWhere()
方法用于添加额外的条件,created_at
是要比较的字段名,your_date
是要比较的日期。
这样,你就可以使用 Knex 在一个查询中切换 Postgres 表中的布尔值了。
关于 Knex 的更多信息和用法,请参考腾讯云的产品介绍链接地址:Knex.js 产品介绍。
领取专属 10元无门槛券
手把手带您无忧上云