如何 select 分月和年?

How to select min month and year?

我有一个 table 这样的:

cuota_abono(**cod_abono**, **mes**, **anio**, valor, pago_acumulado, estado)

where:
-cod_abono: VARCHAR (PK)  
-mes: INT (month -- values from 1 to 12) (PK)  
-anio: INT (year) (PK)  
-valor: DECIMAL(10,2)  
-pago_acumulado: DECIMAL(10,2)  
-estado(TINYINT -- 0 or 1)  

问题是我需要 select 最旧的未付款 cuota_abono(其中 estado=0)。

例如:

cod_abono mes   anio     valor  pago_acumulado  estado
  Z000     9    2015    315.00      100.00         0
  Z000     5    2016    315.00      315.00         1
  Z000     6    2016    315.00      200.00         0
  Z000     7    2016    315.00        0.00         0
  Z001     5    2016    315.00        0.00         0
  Z001     6    2016    315.00      315.00         1

鉴于我正在寻找最旧的 cuota_abono,我希望获得:

(Z000, 9, 2015, 315.00, 100.00, 0) --> 1° row

我试过这个查询:

select cod_abono, min(mes), min(anio), valor, pago_acumulado, estado
from cuota_abono 
where cod_abono="Z000" and cuota_paga=0

但是,我得到:

(Z000, *6*, 2015, 315.00, 100.00, 0)

我实际上得到了 cod_abono="Z000" 和 estado=0 的最小月份,从数字上讲,但这不正确。

有什么建议吗?

使用order bylimit:

select ca.*
from cuota_abono ca
where cod_abono = 'Z000' and cuota_paga = 0
order by anio, mes
limit 1;