oracle日期与字符串的相互转化 |
您所在的位置:网站首页 › 把时间改成上午 › oracle日期与字符串的相互转化 |
文章目录
1.字符串转为日期格式(to_date)2.日期格式转字符串(to_char)3.日期范围查询4. 等于某日期的查询5. LocalDateTime的使用6. between...and查询日期时存在的问题
1.字符串转为日期格式(to_date)
例1:把字符串类型2005-01-01 13:14:20 转成 2005/1/1 13:14:20日期格式 select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;结果: 结果: 例1:把sysdate(2020/5/12 17:31:23)转化为yyyy-MM-dd HH24:mi:ss字符串格式 select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;结果:
分析: 首先30-11月-19 和 2019-12都属于字符串类型的,但是他们的格式不一样,我们可以先把enddate字段中的数据转化为正常的日期格式,再把他转化为字符串,看他与2019-12是否相等 1.先把enddate字段中的数据转化为正常的日期格式 to_date(t.enddate, 'dd-mon-yy') //先转化为日期 30-11月-19==> 2019/11/302.再把他转化为我们想要的字符串 to_char(to_date(t.enddate, 'dd-mon-yy'),'yyyy-mm') // 2019/11/30 ==> 2019-112.完整的过滤sql select t.* from car.lp_totallpdata t where to_char(to_date(t.enddate, 'dd-mon-yy'),'yyyy-mm')='2019-11' 3.日期范围查询日期的范围查询,假设要查询 2011-05-02 到 2011-05-30 之间的数据 这条查询语句有两种实现方式: 假设数据库的字段 time 为 日期类型,传来的数据为字符串类型!!! 1. to_date 方式 把传来的数据 2011-05-02 、 2011-05-02 转化为日期再与time比较 select * from tablename where time >= to_date('2011-05-02','yyyy-mm-dd') and time 0)) { return BaseResp.fail("查询日期范围仅支持三个月!"); }需求案例:找出所有任务中,离当前时间最近的任务信息,并返回! @RequestMapping(value = "/memory",method = RequestMethod.GET) @ApiOperation("修理厂录入定损任务-记忆功能") @ApiImplicitParam(paramType = "query", name = "openid", value = "修理厂openid", required = true, dataType = "String") public R memory(@RequestParam("openid") String openid) { // 1.获取该openid下的所有定损任务 List memoryInfo = kfAppointmentDsService.list(new QueryWrapper().eq("factory_openid", openid)); // 2.收集所有已提交的定损任务的-提交时间戳 List collect = memoryInfo.stream() .map(KfAppointmentDsEntity::getApplyTime) .map(x -> { DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); // 把Date格式转化为时间戳 return LocalDateTime.parse(x, formatter).toEpochSecond(ZoneOffset.of("+8")); }).collect(Collectors.toList()); // 3.通过比较时间戳大小,收集最近一次的提交时间戳 Long maxTime = collect.get(0); for (int i = 0; i = ‘2009-1-22’ And date =、 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |