合并来自相同 table mysql knex 的其他结果
Joining other results from same table mysql knex
我想从同一个 table 中获取与 event_id
匹配的其他 user_id
。我尝试在 leftJoin 和 outerLeftJoin 中使用子查询和 this.on
函数。无法使用以下代码解决 'not unique table/alias' 错误。
knex('user_2_event')
.select(
'event.*',
'user_2_event.user_id as main_user_id'
)
.where('user_2_event.user_id',17)
.join('event', 'event.event_id', 'user_2_event.event_id')
.leftOuterJoin('user_2_event', function(){
this.on('user_2_event.event_id', '=', 'event.event_id')
})
或者用这个代替上面的 leftOuterJoin,它会产生一个 'error with my syntax'.
.join(
knex('user_2_event')
.select('user_2_event.user_id as other_user')
.where('user_2_event.event', '=','event.event_id')
)
在以各种方式搜索有关以不同方式获取数据的指导后 table(但是有人用技术术语表达了这一点),有人建议我在同一个 table。瞧,快速简单,无需担心连接函数和子查询。
knex('user_2_event as e1')
.select(
'event.*',
'e1.user_id as user_id',
'e2.user_id as other_id'
)
.where('e1.user_id',17)
.join('event', 'event.event_id', 'e1.event_id')
.leftJoin('user_2_event as e2', 'e2.event_id', 'event.event_id')
我想从同一个 table 中获取与 event_id
匹配的其他 user_id
。我尝试在 leftJoin 和 outerLeftJoin 中使用子查询和 this.on
函数。无法使用以下代码解决 'not unique table/alias' 错误。
knex('user_2_event')
.select(
'event.*',
'user_2_event.user_id as main_user_id'
)
.where('user_2_event.user_id',17)
.join('event', 'event.event_id', 'user_2_event.event_id')
.leftOuterJoin('user_2_event', function(){
this.on('user_2_event.event_id', '=', 'event.event_id')
})
或者用这个代替上面的 leftOuterJoin,它会产生一个 'error with my syntax'.
.join(
knex('user_2_event')
.select('user_2_event.user_id as other_user')
.where('user_2_event.event', '=','event.event_id')
)
在以各种方式搜索有关以不同方式获取数据的指导后 table(但是有人用技术术语表达了这一点),有人建议我在同一个 table。瞧,快速简单,无需担心连接函数和子查询。
knex('user_2_event as e1')
.select(
'event.*',
'e1.user_id as user_id',
'e2.user_id as other_id'
)
.where('e1.user_id',17)
.join('event', 'event.event_id', 'e1.event_id')
.leftJoin('user_2_event as e2', 'e2.event_id', 'event.event_id')