[RESOLVIDO] Select

2 respostas
javamysql
R

galera eu estou dando um select para mostrar de tal data a tal data só que as datas estão em string no banco e ele não está mostrando tudo e não pegar certo alguém poderia me ajudar desde já agradeço estou dando este select

select * from tb_parc_venda where ((tb_parc_venda.data_venc >= '30/11/2016' and tb_parc_venda.data_venc <= '30/12/2017') and (tb_parc_venda.estado_conta = 'PG')) order by data_venc;

2 Respostas

jonas.cant

Não deviam ter criado uma coluna que serve pra guardar datas do tipo “string”. O erro já começa aí.

Você terá que fazer um cast de “string” para “date” pra fazer funcionar o seu select:

select * from tb_parc_venda 
 where ((STR_TO_DATE(tb_parc_venda.data_venc, '%d/%m/%Y') >= STR_TO_DATE('30/11/2016', '%d/%m/%Y')
   and STR_TO_DATE(tb_parc_venda.data_venc, '%d/%m/%Y') <= STR_TO_DATE('30/12/2017', '%d/%m/%Y')) 
   and (tb_parc_venda.estado_conta = 'PG')) 
   order by data_venc;
R

Desde já te agradeço por estar mostrando tudo agora, teria como me dar outra mão como fazer ele mostrar em ordem
Desde já te agradeço
Obrigado

Cara Obrigado

Consegui aqui  transformar também o order by em data

select * from tb_parc_venda

where ((STR_TO_DATE(tb_parc_venda.data_venc, %d/%m/%Y) >= STR_TO_DATE(30/11/2016, %d/%m/%Y)

and STR_TO_DATE(tb_parc_venda.data_venc, %d/%m/%Y) <= STR_TO_DATE(30/12/2017, %d/%m/%Y))

and (tb_parc_venda.estado_conta = PG))

order by str_to_date(tb_parc_venda.data_venc, %d/%m/%Y)
Criado 1 de dezembro de 2016
Ultima resposta 1 de dez. de 2016
Respostas 2
Participantes 2