Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

312
Visualizações
MongoDB aggregation project with cond not working

I'm getting "MongoServerError: Invalid $project :: caused by :: Unrecognized parameter to $cond: $if" for this code. Whats wrong with it and how do i fix it ?

       {
          $project: {
            _id: 1,
            date: 1,
            slot: 1,
            franchiseId: 1,
            status: 1,
            order: {
              $cond: {
                $if: { $gt: ['$carspa', null] },
                $then: {
                  price: '$carspa.price',
                  mode: '$carspa.mode',
                  address: '$carspa.address',
                  addOn: '$carspa.addOn',
                  service: '$carspa_service.name'
                },
                $else: {
                  $if: { $gt: ['$mechanical', null] },
                  $then: {
                   price: '$mechanical.price',
                   mode: '$mechanical.mode',
                   address: '$mechanical.address',
                   addOn: '$mechanical.addOn',
                   service: '$mechanical_service.name'
                  },
                  $else: {
                    price: '$quickhelp.price',
                    mode: '$quickhelp.mode',
                    address: '$quickhelp.address',
                    addOn: '$quickhelp.addOn',
                    service: '$quickhelp_service.name'
                  }
                },
              },
            },
          }
        }
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Try

{
      $project: {
        _id: 1,
        date: 1,
        slot: 1,
        franchiseId: 1,
        status: 1,
        order: {
          $cond: {
            if: { $gt: ['$carspa', null] },
            then: {
              price: '$carspa.price',
              mode: '$carspa.mode',
              address: '$carspa.address',
              addOn: '$carspa.addOn',
              service: '$carspa_service.name'
            },
            else: {
              if: { $gt: ['$mechanical', null] },
              then: {
               price: '$mechanical.price',
               mode: '$mechanical.mode',
               address: '$mechanical.address',
               addOn: '$mechanical.addOn',
               service: '$mechanical_service.name'
              },
              else: {
                price: '$quickhelp.price',
                mode: '$quickhelp.mode',
                address: '$quickhelp.address',
                addOn: '$quickhelp.addOn',
                service: '$quickhelp_service.name'
              }
            },
          },
        },
      }
    }
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda