mybatis 查询时间戳类型(TIMESTAMP) 回显成时间字符串的问题

本文介绍使用 MyBatis 在 SQL 查询中处理 TIMESTAMP 类型字段的方法。通过 DATE_FORMAT 函数将时间格式化为指定字符串格式,确保前端展示友好。特别针对连表查询场景下返回时间字符串的需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mybatis在select查询TIMESTAMP类型的时间时,如果resultType="java.util.HashMap",返回的map中时间的类型仍是TIMESTAMP类型,

这样返回前台的数据,会转变成毫秒值

如果想要回显成想要的字符串格式,则用时间函数 

 DATE_FORMAT(datetime,'%Y-%m-%d %H:%i:%s')

此方法适用于连表查询时  想返回想要的时间串类型

<select id="selectByUserGroupId" parameterType="String" resultType="java.util.HashMap">
    SELECT 
        u.user_id userId,
        u.dept_id deptId,
        u.user_name userName,
        u.user_acc userAcc,
        u.user_pwd userPwd,
        u.user_salt userSalt,
        u.user_state userState,
        u.user_company userCompany,
        u.user_mobile userMobile,
        u.user_email userEmail,
        u.user_last_login_time userLastLoginTime,
        DATE_FORMAT(u.create_time,'%Y-%m-%d %H:%i:%s') createTime,
        u.create_by createBy,
        u.update_time updateTime,
        u.update_by updateBy,
        ud.dept_name deptName,
        ur.role_name roleName,
        ug.user_group_name userGroupName,
        uu.user_ugroup_id userUgroupId
    FROM 
    isomp_user_ugroup uu
        INNER JOIN isomp_user_group ug ON ug.user_group_id = uu.user_group_id,
    isomp_user u
        INNER JOIN isomp_dept ud 
            ON u.dept_id = ud.dept_id
        LEFT JOIN isomp_role ur 
            ON role_id = (SELECT ru.role_id FROM isomp_role_user ru WHERE ru.user_id = u.user_id)    
        WHERE uu.user_id = u.user_id AND uu.user_group_id = #{userGroupId,jdbcType=VARCHAR}
      </select>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值