Em meu projeto java, estou usando como banco de dados o MySql, para alguns testes unitários estou usando o banco em memoria h2 database.
Na camada de persistência estou realizando uma consulta por período inicial e final, para construção da consulta estou utilizando Hibernate Criteria.
No banco minha coluna de data é do tipo dateTime, portanto ao realizar uma consulta passando os parâmetros de data truncado, por exemplo 2018-08-01 até 2018-08-24 (2018-08-24 simboliza a data atual de hoje), silenciosamente o Mysql envia a seguinte instrução 2018-08-01 00:00:00 até 2018-08-24 00:00:00. Com isso os registros com data igual 2018-08-24 não são retornados.
Por esse motivo tive que adiconar um sqlRestriction no Hibernate criteria para adicionar a função DATE() do MySql na coluna de data para o filtro ser passado corretamente, exemplo DATE(data_criacao) >= 2018-08-01 and DATE(data_criacao) <= 2018-08-24.
O problema é que meus testes unitário quebrou pelo motivo do banco h2 database não suportar a função DATE() que é particular do MySql.
Alguém já passou pelo mesmo problema, ou conhece uma função DATE() equivalente para o banco h2?
Obrigado!