按系统时间范围查找数据库中符合时间范围的数据

要写一个接口,传入参数时,会根据传入的开始时间结束时间查询数据库中符合时间范围的数据,如果不传入参数时,会查出所有时间段的数据,传入的参数为年月日时分秒,get请求,这种该怎么写

select * from table where 1=1
<if test="startTime!=null and startTime!='' ">
        AND createTime >= #{startTime}
 </if>
<if test="endTime!=null and endTime!='' ">
        AND createTime <= #{endTime}
 </if>

if test


<if test="id!=null">
        AND id = #{id}
    </if>

可参考文章 Mybatis 动态SQL标签 https://blog.csdn.net/qq_42449106/article/details/109128648?spm=1001.2014.3001.5501

接口正常写就行,只需要在取时间参数的时候判断一下是否为空,然后根据判断结果去执行不同的查询代码就行了