繁体   English   中英

如何在mybatis_dynamic_sql中为TO_CHAR(USE_BY_DATE-?,'YYYYMMDD')> = TRUNC(SYSDATE)创建查询

[英]how to create a query in mybatis_dynamic_sql for TO_CHAR(USE_BY_DATE - ?,'YYYYMMDD') >=TRUNC(SYSDATE)

我想在mybatis_dynamic_sql中实现以下sql查询。

select * from xyz where TO_CHAR(some_date_col - ?,'YYYYMMDD') >=TRUNC(SYSDATE)

如果使用mapper.xml ,则select可能如下所示。 请注意,不要声明特定的paramterType

<select
    id="myQueryInXml"
    resultType="[replace with your type]"
    resultMap="[replace with the name of your resultMap]">
    select * from ${tabName} where TO_CHAR(${colName} - #{paramName},'YYYYMMDD') >=TRUNC(SYSDATE)
</select>

相应的Interface方法可能看起来像这样

boolean myQueryInXml(
        @Param("colName") final String colName,
        @Param("tabName") final String tabName, 
        @Param("paramName") final String paramName
        );

如果使用批注,则Interface方法可能如下所示

@Select("select * from ${tabName} where TO_CHAR(${colName} - #{paramName},'YYYYMMDD') >=TRUNC(SYSDATE)")
boolean myQuery(
        @Param("colName") final String colName,
        @Param("tabName") final String tabName, 
        @Param("paramName") final String paramName
        );

说明

@Param("[replace with a parameter-name]")使传递的参数在注解中的给定名称下可用

mapper.xml $或(例如) @Select("[query]")注释告诉myBatis打印/使用普通参数内容。 另一方面, #告诉myBatis“猜测”数据库类型。 例如, String s会在''自动变为边缘。 因此无需手动进行

请同时看看:

mybatis – MyBatis 3 | 映射器XML文件

mybatis – MyBatis 3 | 动态SQL

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM