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

135
Visualizações
Uso de Joins, Uniq y Group_by_month(:created_at)

hola vuelvo a escribir la pregunta

así que tengo 3 modelos 'Usuario' 'Compañero' 'Tarea'

y

 User. has_many: companions, has_many: tasks Companion: belongs_to: user Task: belongs_to: user

y los datos que necesito son datos mensuales de Usuario, y Usuario que tiene Compañeros, y finalmente quién ha ordenado una Tarea

así que estaba tratando de usar estos códigos

 User.group_by_month(:created_at).count

Hasta aquí pude tener los datos de lo que estaba pensando.

 User.joins(:companions).uniq.group_by_month(:created_at).count

y yo el numero mensual contado de usuarios que tiene acompañantes pero no funciona en absoluto

entonces también necesito unirme a una 'Tarea' para averiguar qué usuario tiene un compañero y también ordenó una tarea

entonces el resultado que me gustaría ver es

Contar Usuario registrado mensualmente

 Aug, 2020 = > 300

Usuarios que tienen acompañante

 Aug, 2020 = > 150

Usuarios que tienen acompañante y ordenaron una tarea

 Aug, 2020 = > 75

Necesito números únicos Usuario que tiene Companion y Usuario que tiene Companion y también ordenó una tarea

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Uniq funciona en arreglos. Para una collection of records , puede usar distinct .

Verifique: https://apidock.com/rails/v5.2.3/ActiveRecord/QueryMethods/distinct

Eso significa que puedes usar:

 User.joins(:companions).distinct.group_by_month(:created_at).count
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