最近开始工作了,要学习java后端开发,遇到这个问题搞了我一天,记录一下。
问题来源:我用的springboot整合mybatis来访问数据库,需求是通过数据库表中的时间字段(TIMESTAMP类型)查询一段时间内的订单,不管怎么写查询语句都不对。
结果一番查证了解到一个新的知识点:我们在postman测试时输入的时间是String类型的,所以在查询之前必须将String类型的语句转为对应的时间类型,可以是Timestamp也可以是Date类型,所以用两种转化方法,下面先介绍简单的SQL语句的正确写法,再介绍整合到mybatis的配置文件里应该如何写。
1.Oracle的查询语句
将Timestamp转化为String进行比较
SELECT * FROM TEST1 WHERE TO_CHAR(TIMESTAMP,'yyyy-MM-dd') > SUBSTR