Multiple if in an SQL condition

0

I'm trying to use 2 if s but the result always returns empty, when I use only if it will.

SELECT aci_codigo, aci_valor_pagamento, bai_fk_pes_codigo,
       aci_tipo_pagamento, aci_fk_ftm_codigo, aci_nosso_numero,
       ftm_descricao, ftm_codigo, bai_fk_bor_codigo, 
       bor_tipo,bai_data_cadastro
FROM acordo_item
INNER JOIN baixa ON bai_fk_aci_codigo = aci_codigo
INNER JOIN bordero ON bor_codigo = bai_fk_bor_codigo
LEFT JOIN financeiro_tipo_movimentacao ON ftm_codigo = aci_fk_ftm_codigo
WHERE aci_status = 'B'
AND 
IF(aci_tipo_pagamento = "PE", bai_data_cadastro, bor_data_criacao) >= '2016-11-22 00:00:00'
AND 
IF(aci_tipo_pagamento = "PE", bai_data_cadastro, bor_data_criacao) <= '2016-11-22 00:00:00'
GROUP BY aci_codigo
    
asked by anonymous 02.12.2016 / 15:07

2 answers

1
...
AND 
(
IF(aci_tipo_pagamento = "PE", bai_data_cadastro, bor_data_criacao) >= '2016-11-22 00:00:00'
AND 
IF(aci_tipo_pagamento = "PE", bai_data_cadastro, bor_data_criacao) <= '2016-11-22 00:00:00'
)
GROUP BY aci_codigo
    
02.12.2016 / 15:38
0

I was able to solve it as follows

AND IF (pay_type = 'PE', ba__data_cadastro> = '{$ dataI} 00:00:00', bor_data_creation> = '{$ dataI} 00:00:00')                 AND IF (aci_type_payment = 'PE', ba__data_cadastro

05.12.2016 / 11:04