zoukankan      html  css  js  c++  java
  • Mybatis resultMap灵活用法(使用子查询)

    ### 背景
    查询广州每个景点的总流量,和每个景点每日流量

    #### 数据表 t_广州
    |唯一标识id|地点place|流量counts|日期date|
    |:---:|:---:|:---:|:---:|
    |1|动物园|100|'2018-11-11'|
    |2|动物园|200|'2018-11-12'|
    |3|植物园|100|'2018-11-11'|

    ### 需求
    统计每个地点的总流量,和每天的流量
    结果示意结构如下:
    ````json
    {
    place: '动物园',
    allCounts: 300,
    perDay : [
    {
    date: '2018-11-11',
    counts: 100
    },
    {
    date: '2018-11-12',
    counts: 200
    }
    ]
    },
    {
    place: '植物园',
    allCounts: 100,
    perDay : [
    {
    date: '2018-11-11',
    counts: 100
    }
    ]
    },
    ````
    xml文件如下:
    ````xml
    <select id="pageResultMapSelect" parameterType="java.util.Map" resultMap="pageResultMap">
    select date,counts from t_广州 where place=#{place} group by date
    </select>
    <resultMap id="pageResultMap" resultType="java.util.Map">
    <result column="place" property="place" />
    <result column="allCounts" property="allCounts" />
    <collection property="perDay" javaType="java.util.List" ofType="java.util.Map" column="(place=place)" select="pageResultMapSelect"></collection>
    </resultMap>
    <select id="page" parameterType="java.util.Map" resultMap="pageResultMap">
    select place,sum(counts) as allCounts from t_广州 group by place
    </select>
    ````

  • 相关阅读:
    CentOS更改yum源与更新系统
    JQ兼容各种JS库的写法
    虚拟主机
    SSH安全登录(远程管理)22端口
    Samba服务器
    VSFTP服务
    网络配置和文件服务器
    服务和进程管理(二)
    攻防世界XCTF--一个登录验证页面(第六题)
    攻防世界XCTF--一个不能按的按钮(第五题)
  • 原文地址:https://www.cnblogs.com/winniejohn/p/10456383.html
Copyright © 2011-2022 走看看