Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

189
Vistas
¿Cómo eliminar la combinación izquierda en la función Knex.JS?

¿Cómo eliminar la integración de unión izquierda?

 await knex.select().from("dishes") .leftJoin("companies", function () { if (companyId) { this.on("dishes.companyId", "=", "companies.id") } else { // I want to remove left join if companyId is false return false; } })

Tengo un error:

 code: 'ER_PARSE_ERROR', sql: 'select * from `dishes` left join `companies`' }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

No está claro con qué parte está teniendo dificultades. Su error actual se debe al hecho de que está intentando crear una combinación izquierda sin darle una condición para unirse.

Le sugiero que mueva su verificación if (companyId if (companyId) fuera de la llamada leftJoin() para que se creen dos consultas separadas.

 async function getDishes(companyId) { if (companyId) { return knex.select().from("dishes"). leftJoin("companies", "dishes.companyId", "companies.id"); } return knex.select().from("dishes"); }

Lo que potencialmente podría simplificarse a

 async function getDishes(companyId) { const dishes = knex.select().from("dishes"); return companyId ? dishes.leftJoin("companies", "dishes.companyId", "companies.id"); : dishes; }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda