crqc 0 Denunciar post Postado Agosto 21, 2009 Pessoal tenho um BD que mantém umas informações de matricula. Tabela 'matriculas': MAT_COD int(11) USU_COD int(11) ALU_COD int(11) CUR_COD int(11) MAT_DTHR datetime MAT_CAD char(1) MAT_VLR float Quando faço um select nesta tabela ela retorna vazio, sendo que há entradas. "SELECT * FROM `matriculas` WHERE `MAT_COD` = 3 AND date_format(matriculas.MAT_DTHR,'%d/%m/%Y') >= '01/01/2009' and date_format(matriculas.MAT_DTHR, '%d/%m/%Y') <= '13/09/2009'" Tenho pelo menos entradas que satisfazem estas cláusulas: MAT_COD USU_COD ALU_COD CUR_COD MAT_DTHR MAT_CAD MAT_VLR 1 3 1 14 2009-08-21 15:41:06 0 70 2 3 1 4 2009-08-21 15:41:13 0 30 3 3 1 13 2009-08-21 15:41:21 0 70 Quando a data final é com dias superiores a 20 (ex: 23/09/2009) ele recupera. Alguém sabe porque isso e como corrigir? Att. Cesar Castro Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Agosto 21, 2009 nao se pode usar date_format para fazer where já que o date_format converte a data em texto Compartilhar este post Link para o post Compartilhar em outros sites
crqc 0 Denunciar post Postado Agosto 22, 2009 Eu alterei, tirei o date_format, mas continua o erro, só funciona quando o dia da data é superior a dia 20, de qualquer mês, mas mudar o formato da data pesquisada funciona, eu testei invertendo, colocando o padrão americano e funciona (aaaa/mm/dd) mas tenho casos que busco dados por data tb em outras tabelas, usando o date_format e a data no padrão dd/mm/aaaa e funciona bem. se alguém tiver uma explicação seria interessante para esclarecer, pois até onde meu estudo (não é grande) me permitiu entender, o MySQl é Bd inteligente ao tratar datas, pode-se colcoar de muitas formas e ele é capaz de entender. Se eu estiver errado, me corrijam por favor. att Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Agosto 22, 2009 o MySQl é Bd inteligente ao tratar datas, pode-se colcoar de muitas formas e ele é capaz de entender. Nop. Compartilhar este post Link para o post Compartilhar em outros sites