peng
17 小时以前 ba6b781b146b2e941489149fb23594067cb2fa43
framework/src/main/resources/mapper/lmk/ActionRecordMapper.xml
@@ -65,4 +65,25 @@
            LAR.delete_flag = 0
    </select>
    <select id="getToDayStayTime" resultType="decimal">
        SELECT SUM(t.stay_seconds)
        FROM (SELECT user_id,
                     page_code,
                     session_id,
                     MIN(CASE WHEN page_status = 'JOIN' THEN start_time END)  AS enter_time,
                     MIN(CASE WHEN page_status = 'LEAVE' THEN start_time END) AS leave_time,
                     TIMESTAMPDIFF(SECOND, MIN(CASE WHEN page_status = 'JOIN' THEN start_time END),
                                           MIN(CASE WHEN page_status = 'LEAVE' THEN start_time END)
                     )                                                        AS stay_seconds
              FROM lmk_action_record
              WHERE action_type = 'PAGE'
                AND page_status IN ('JOIN', 'LEAVE')
                AND user_id = #{userId}
                AND create_time BETWEEN #{begin} AND #{end}
              GROUP BY user_id, page_code, session_id
              HAVING enter_time IS NOT NULL
                 AND leave_time IS NOT NULL
              ORDER BY user_id, session_id, enter_time) t
    </select>
</mapper>