select * from xyz where to_char(sdateAndTime,'DD-MM-YYYY')=(select max( to_char(sdateAndTime,'DD-MM-YYYY')) as dt from xyz))
sdateAndTime is timestamp field in oracle db. i am interested to fetch record for that given date and not in hh:mm:ss:zzzz AM/PM.
Trying to build criteria for it but :(
CriteriaBuilder builder = entityManager.getCriteriaBuilder();
CriteriaQuery<XYZ> criteria = builder.createQuery(XYZ.class);
Root<XYZ> root = criteria.from(XYZ.class);
criteria.select(root);
Subquery<XYZ> sub = criteria.subquery(XYZ.class);
Root subRoot = sub.from(XYZ.class);
sub.select(builder.max(subRoot.get("sdateAndTime")));
criteria.select(root).where(builder.in(root.get("sdateAndTime")).value(sub);
entityManager.createQuery(criteria);
私は dd:hh:mm:ss の抽出最大値に到達できましたが、 to_char(sdateAndTime,'DD-MM-YYYY') に相当するものを取得できませんでした
入力をいただければ幸いです。ありがとう