mapper.xml 使用大于号、小于号示例

xml 复制代码
<mapper namespace="com.example.EmployeeMapper">

    <!-- 更新employee_absent_resign_statistics表中的pre_work_date -->
    <update id="updatePreWorkDate">
        <![CDATA[
        UPDATE employee e1
        JOIN employee e2
            ON e2.statistics_date < e1.statistics_date
            AND e2.emplid = e1.emplid
        SET e1.pre_work_date = e2.statistics_date
        WHERE NOT EXISTS (
            SELECT 1
            FROM employee_absent_resign_statistics e3
            WHERE e3.statistics_date < e1.statistics_date
              AND e3.emplid = e1.emplid
              AND e3.statistics_date > e2.statistics_date
        )
        ]]>
    </update>

</mapper>

<![CDATA[]]>:为了避免 XML 中的特殊字符(如 < 和 >)被当作 XML 标签处理,我们使用 <![CDATA[]]>

来包裹 SQL 查询,这样就可以直接写 SQL 语句而不受 XML 特殊字符的限制。

SQL语句本身:直接将原来的 SQL 语句放在 <![CDATA[]]> 中,保持原有的 SQL 逻辑不变。

相关推荐
wang60212521819 小时前
为什么不采用级联删除而选择软删除
数据库·oracle
爱笑的眼睛1119 小时前
超越剪枝与量化:下一代AI模型压缩工具的技术演进与实践
java·人工智能·python·ai
阿里云云原生19 小时前
Android App 崩溃排查指南:阿里云 RUM 如何让你快速从告警到定位根因?
android·java
历程里程碑19 小时前
C++ 9 stack_queue:数据结构的核心奥秘
java·开发语言·数据结构·c++·windows·笔记·算法
醇氧19 小时前
【Windows】从守护到终结:解析一个 Java 服务的优雅停止脚本
java·开发语言·windows
努力发光的程序员19 小时前
互联网大厂Java求职面试实录
java·jvm·线程池·多线程·hashmap·juc·arraylist
小鹿学程序19 小时前
FileZilla连接到虚拟机
java·服务器·开发语言
Haooog20 小时前
Docker面试题(不定时更新)
java·docker·面试
变形侠医20 小时前
比 Kettle 快2倍的 Java ETL 开源库:Etl-engine
数据库
soft200152520 小时前
从一次增删改操作开始:彻底理解 MySQL Buffer Pool 的地位与作用
数据库·mysql