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

239
Visualizações
Tener problemas para encontrar registros distintos usando Sequelize

Supongamos que tengo una tabla con registros como [{fruta: manzana, color: verde, precio: 100}, {fruta: manzana, color: rojo, precio: 75}, {fruta: plátano, color: amarillo, precio: 50 }] .

¿Cuál sería el comando de secuencia si quisiera obtener frutas únicas, pero quiero obtener solo el campo de color junto con él, y solo quiero 1 ocurrencia de una fruta ... Entonces, para esta tabla, quiero que mi resultado sea [{fruta: manzana, color: verde},{fruta: plátano, color: amarillo}]

Esto es lo que probé:

 fruitVendor.findAndCountAll({ attributes:[[Sequelize.fn('DISTINCT', Sequelize.col('fruit')),'FRUIT'],['colour','COLOUR']] })

Pero obtuve [{fruta: manzana, color: verde}, {fruta: manzana, color: rojo}, {fruta: plátano, color: amarillo}]

Y luego eliminé el color como uno de los atributos solo para verificar si la distinción funcionaba bien:

 fruitVendor.findAndCountAll({ attributes:[[Sequelize.fn('DISTINCT', Sequelize.col('fruit')),'FRUIT'] })

Y obtuve [{fruta: manzana}, {fruta: plátano}]

Entonces, incluso si menciono distinto con un atributo específico, ¿lo aplicó también a los demás?

¿Alguien puede ayudarme a conseguir [{fruta: manzana, color: verde}, {fruta: plátano, color: amarillo}]

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Así es como funciona SELECT DISTINCT con SQL. Evalúa todas las combinaciones de las columnas que eligió para seleccionar.

Si no lo hiciera de esta manera, ¿cómo sabría que querías {fruta: manzana, color: verde} en lugar de {fruta: manzana, color: rojo}?

about 4 years ago · Juan Pablo Isaza Relatório

0

Si estás de acuerdo con cualquier color, puedes probar esto.

 fruitVendor.findAndCountAll({ attributes: [['fruit','FRUIT'], [Sequelize.fn('MIN', Sequelize.col('colour')), 'COLOUR']], // Or MAX group: 'fruit' })
about 4 years ago · Juan Pablo Isaza 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