SELECT DAY(tide_datetime) AS dates,max(value)
FROM  tide 
WHERE TO_CHAR(tide_datetime,'YYYYMM') = '200506'       AND
      TO_CHAR(tide_datetime,'HH:MI:SS') <= '11:59:59'
GROUP BY dates;