Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/03/2017, 09:36
miguel20dh
 
Fecha de Ingreso: marzo-2015
Mensajes: 15
Antigüedad: 9 años
Puntos: 0
Maximo valor Mysql

Buenas tardes,

Tengo un problema y no consigo dar con la solución. Os pongo en situación:

Tabla: FechaControl

Columnas:
Código SQL:
Ver original
  1. |   Estado   | codigoproyecto | vercodigoproyecto |       fecha       |
  2.  
  3.    aceptado              18                        0                    06-05-2016
  4.     anulado               18                        1                    10-09-2016
  5.     borrado               18                        2                    01-03-2017
  6.    aceptado              19                        0                    09-04-2017

El dato que da la pagina es el año.

Lo que yo quiero que depende le año que se elija te de como resultado de todos los codigos de proyectos el ultimo correspondiente a ese año.
Por ejemplo, si elijo 2016 solo debería de darme como resultado el:
Código SQL:
Ver original
  1. anulado               18                        1                    10-09-2016

Y como segundo ejemplo si elijo 2017 me daría como resultado:
Código SQL:
Ver original
  1. borrado               18                        2                    01-03-2017
  2.    aceptado              19                        0                    09-04-2017

Otra cosa que también me gustaría que incluyese es que agrupara por estado. En el ejemplo de 2016 me diría que hay 1 anulado.

En el ejemplo de 2017 me diría de existe 1 borrado y 1 aceptado.

He probado varias consultas y ninguna me da lo que quiero. Las dejo aqui:
Código SQL:
Ver original
  1. SELECT estado, COUNT(estado) AS total FROM `FechaControl` WHERE `vercodigoproyecto`= (SELECT MAX(vercodigoproyecto) FROM `FechaControl` WHERE YEAR(fecha)='2016') GROUP BY `estado`

Estoy un poco perdido y agradecería que alguien me echara una mano.
Si necesitáis cualquier dato avisar.
Saludos y gracias.

Última edición por gnzsoloyo; 24/03/2017 a las 16:03