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

178
Vistas
Obtenga las últimas 5 filas por atributo, postgres

Tengo una tabla de eventos asociada con los usuarios. Me gustaría saber si es posible escribir una consulta sql, para seleccionar el usuario que crea el evento, y los últimos 3 eventos tenían el estado 'cancelado'.

no contar () donde estado = 'cancelado', solo donde las últimas 3 filas tenían estado cancelado

 Select u.* from users AS u Right Join events as e ON e.user_id = u.id WHERE {last 3 rows have e.status = 'canceled'} Order by e.created_at Group by u.id

Tabla de EVENTOS:

 user_id, status, created_at 1, 'canceled', 2017-04-21 1, 'finished', 2017-04-20 1, 'finished', 2017-04-19 1, 'canceled', 2017-04-18 1, 'canceled', 2017-04-17 2, 'canceled', 2017-04-21 2, 'canceled', 2017-04-20 2, 'canceled', 2017-04-19 2, 'finished', 2017-04-18 2, 'finished', 2017-04-17
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Puede obtener la lista de usuarios usando funciones de ventana. Aquí hay un método:

 select e.user_id from (select e.*, row_number() over (partition by e.user_id order by created_at desc) as seqnum from event e ) e where seqnum <= 3 and e.status = 'canceled' group by e.user_id having count(*) = 3;

La consulta enumera los eventos desde el final y luego cuenta el número que se cancela.

Puede obtener información adicional del usuario uniéndose nuevamente a users (o usando in o exists ).

over 4 years ago · Santiago Trujillo 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