我有这样一张桌子:
box-shadow: 5px 0px 0px rgba(0, 0, 0, 0.3);
问题是我需要选择最旧的未付款的cuota_abono(其中estado = 0)。
例如:
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)
鉴于我正在寻找最古老的cuota_abono,我希望得到:
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
我尝试了这个查询:
(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
我实际上得到的最小月份是cod_abono =" Z000"和estado = 0,从数字上讲,但它不正确。
有什么建议吗?
答案 0 :(得分:0)
使用order by
和limit
:
select ca.*
from cuota_abono ca
where cod_abono = 'Z000' and cuota_paga = 0
order by anio, mes
limit 1;