要使用knex.js和objection.js在Postgres中查询小于48小时的记录,可以按照以下步骤进行操作:
npm install knex objection pg
knexfile.js
,配置数据库连接信息:module.exports = {
development: {
client: 'pg',
connection: {
host: 'your_host',
user: 'your_username',
password: 'your_password',
database: 'your_database',
},
migrations: {
directory: './migrations',
},
},
};
npx knex migrate:make create_records_table
在生成的迁移文件中,编写创建表格和字段的代码,例如:
exports.up = function (knex) {
return knex.schema.createTable('records', function (table) {
table.increments('id').primary();
table.string('name');
table.timestamp('created_at').defaultTo(knex.fn.now());
});
};
exports.down = function (knex) {
return knex.schema.dropTable('records');
};
npx knex migrate:latest
const { Model } = require('objection');
class Record extends Model {
static get tableName() {
return 'records';
}
}
module.exports = Record;
const knex = require('knex');
const { Model } = require('objection');
const Record = require('./models/Record');
// 初始化knex.js连接
const db = knex({
client: 'pg',
connection: {
host: 'your_host',
user: 'your_username',
password: 'your_password',
database: 'your_database',
},
});
// 绑定knex.js连接到objection.js
Model.knex(db);
// 查询小于48小时的记录
const records = await Record.query()
.where('created_at', '>', db.raw('now() - interval \'48 hours\''))
.orderBy('created_at');
console.log(records);
以上代码中,通过where
方法传入一个原始的SQL表达式来筛选小于48小时的记录,并通过orderBy
方法按照created_at
字段进行排序。
这样,就可以使用knex.js和objection.js在Postgres中查询小于48小时的记录了。
腾讯云相关产品和产品介绍链接地址:
DBTalk
Elastic 中国开发者大会
云+社区技术沙龙[第26期]
DB TALK 技术分享会
Elastic 实战工作坊
Elastic 实战工作坊
云+社区技术沙龙[第27期]
DB TALK 技术分享会
Elastic 中国开发者大会
领取专属 10元无门槛券
手把手带您无忧上云