Parmi les quatre options ci-dessus utilisant 3 requêtes réelles dans mon application, chacune prenant environ 1 à 3 secondes chacune pour s'exécuter, la méthode 3 a fini par être la plus rapide pour toute personne intéressée.
Les méthodes 1 et 2 étaient environ une demi-seconde plus lentes et la méthode 4 n'était que très légèrement plus lente.
Edit :j'ai fait ces benchmarks en utilisant le console.time('query')
suggestion dans les commentaires ci-dessus.