MySQL - Consulta delimitada por fechas

 
Vista:

Consulta delimitada por fechas

Publicado por ivanyatal (1 intervención) el 27/01/2017 10:33:29
Buenos días!

Espero que podáis echarme una mano porque estoy volviéndome loco.

Antes de poner la consulta explico un poco lo que estoy buscando. Quiero sacar las compras de un determinado contrato. El contrato tiene una fecha en la que se hizo, por ejemplo 27/01/2017.

Dentro de ese contrato hay diferentes compras, de distintos productos. El coste que tiene el producto que se ha vendido viene de la tabla 'costes'.

El problema que se me presenta es que un producto puede tener distintos costes a fecha 01/01/2017, 15/01/2017 o 30/01/2017 (Por poner un ejemplo).

La consulta que tengo sería la siguiente:

1
SELECT compras.idcompra, compras.idcontrato, compras.idproducto, compras.importe, productos.nombre, costes.costesiniva, costes.fecha, contratos.fecha FROM compras INNER JOIN productos ON compras.idproducto = productos.idproducto INNER JOIN costes ON productos.idproducto = costes.idproducto INNER JOIN contratos ON contratos.idcontrato = compras.idcontrato WHERE compras.idcontrato = '9' AND costes.fecha <= contratos.fecha

Con esto consigo descartar los costes del 30/01, pero evidentemente me aparecen los costes del 01/01 y del 15/01.

Cómo podría sacar solamente el coste que correspondería? En este caso es el 15/01.

Espero haberme explicado bien xD
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder