我有下表。
users {
id,
blog_id,
deleted,
...other fields
}
和
blogs {
id,
posts: [],
name,
deleted,
}
在单个knex查询中有可能让一个用户获得博客帖子吗?
我正在尝试这样:
db
.table('users')
.where('id', id)
.whereNot('deleted', true)
.join('blogs', { 'blog_id': 'blogs.id' })
.select();
但是我收到以下错误:
错误:列引用“已删除”不明确
有更好的方法吗? (只需要博客表中的帖子)
答案 0 :(得分:1)
只需调用另一个函数“ .columns([''])”-
db('users')
.leftJoin('blogs', 'blogs.id', 'users.blog_id')
.where('blogs.id', id)
.whereNot('blogs.deleted', true)
.columns(['users.id', 'blogs.name']); // what ever you want