<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.iocoder.yudao.module.member.dal.mysql.card.CardMapper">

    <!--
        一般情况下，尽可能使用 Mapper 进行 CRUD 增删改查即可。
        无法满足的场景，例如说多表关联查询，才使用 XML 编写 SQL。
        代码生成器暂时只生成 Mapper XML 文件本身，更多推荐 MybatisX 快速开发插件来生成查询。
        文档可见：https://www.iocoder.cn/MyBatis/x-plugins/
     -->
    <select id="selectMoneyList" resultType="cn.iocoder.yudao.module.member.dal.dataobject.card.CardDO">
        select *
        from member_card mc
        right join (select user_id, max(create_time) as create_time
           from member_card
           where user_id in
        <foreach item="id" collection="list" open="(" separator="," close=")">
            #{id}
        </foreach>
           group by user_id) uc
          on uc.user_id = mc.user_id and uc.create_time = mc.create_time
    </select>

    <resultMap type="cn.iocoder.yudao.module.member.controller.app.card.vo.FaceVo" id="face">
        <id column="user_id" property="userId"/>
        <result column="feature_value" property="featureValue" typeHandler="cn.iocoder.yudao.module.member.service.card.ConvertBlobTypeHandler"/>
    </resultMap>

    <select id="getFaceData" resultMap="face">
        select * from user_face where user_id = #{faceId};
    </select>

</mapper>