Le risposte SQL sono tabelle piatte per loro natura, quindi oltre a knex avrai bisogno di una lib esterna in grado di ricostruire informazioni piatte su oggetti nidificati.
La maggior parte delle librerie ORM sa come farlo. Ad esempio objection.js
che è costruito su knex usa .eager()
per recuperare le relazioni nidificate. Con objection.js ORM la query sarebbe simile a questa Project.query().where('id', 1).eager('employees')