Я думаю, что использование .sqlRestriction решит вашу проблему здесь. Проверьте код ниже:
Session session = ... ;
Criteria c = session.createCriteria(Flyout.class);
c.add(Restrictions.sqlRestriction("substring_index(substring(Date_flyout,2),',',1) between ? and ?",
new Object[]{"06-01-2017", "07-10-2017"},
new Type[]{StandardBasicTypes.STRING, StandardBasicTypes.STRING}));
List<Flyout> tList = c.list();
for (Flyout f : tList) {
System.out.println(f.getName() + " - " + f.yourTableProperyDateHere());
}
session.close();
substring(Date_flyout,2)
- игнорирование стартовой трубы из колонны
substring_index(substring(Date_flyout,2),',',1)
- разделение текста из первой трубы после игнорирования начальной трубы