¿Cómo hacer una consulta para saber cuáles de los socios no tiene registrado ningún pago durante el último año?

Hice una base de datos en donde está la información de los socios y sus datos, y otra tabla donde están los pagos (n de socio y en otra columna pago realizado, más un id de cada pago)

Hice consultas varias como –consultar información por número de socio, dni, apellido, etc…

-Consultar pagos por número de socio, consultar un pago específico por id de pago…. Etc..

Hasta ahí va bien…:)

Lo que necesito es hacer una consulta que me diga a cuáles de los socios no se le registra NINGÚN pago durante el último año. Y otra consulta que diga a cuales de los socios no se le registra ningún pago durante los últimos seis meses.

Yo hice algo de acuerdo a lo que me ayudaron aquí, pero fue la consulta sobre quién no pagó durante el 2016, y llegué a la conclusión de que no me sirve, porque tengo que andar calculando quienes son socios de este año y obviamente no pagaron durante el 2016, aparte de que tampoco sirve esa consulta porque hay socios nuevos durante todo el año.

Si es sin códigos mejor, porque ando frito con eso, me huele a que es fácil. Ojala puedan ayudarme.

Gracias! Estoy re loco tengo que entregárselos mañana

1

1 Respuesta

6.350 pts. A tus ordenes en lo que pueda

select * from socios where socioid not in (select socioid from pagos where fecha between xxxxx and xxxx)

La sintaxis la vas a tener que adaptar a la base de datos que utilices, pero basicamente es asi

Seleccionas todos los socios de los cuales el id no este en la tabla pago dentro de un rango de tiempo. Suerte

Pero eso dónde lo pongo! No estoy familiarizado con los códigos estos.. MIl gracias

Logré hacerlo pero me tira cualquier dato, no me dice los que no pagaron, los que me tira como resultaro, busco sus pagos y resulta que sí pagaron todo el 2016! (estoy desesperado jaja)

Lo que está entre paréntesis no me tira ningún dato, por lo tanto el código completo me devuelve todos los valores de la lista socios

Lo logré me había faltado poner # entre las fechas. Gracias

Lo que me faltaría y con eso termino, es a todo eso, sumarle un filtro que de los resultados solo me muestre los que tengan n de socio menor a 5000. Por ejemplo. Porque de ahí en adelante son los que se inscribieron en el 2017 y esos obviamente no pagaron 2016

Le tenes que agregar al where algo similar a "and nrosocio>5000"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas