BigdataSknPriceareaMapper.xml 2.31 KB
<?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="com.yoho.search.dal.BigdataSknPriceareaMapper">
    <resultMap id="BaseResultMap" type="com.yoho.search.dal.model.BigdataSknPricearea">
        <id column="product_skn" property="productSkn" jdbcType="INTEGER"/>
        <result column="date_id" property="dateId" jdbcType="INTEGER"/>
        <result column="price_area" property="priceArea" jdbcType="INTEGER"/>
        <result column="create_time" property="createTime" jdbcType="INTEGER"/>
    </resultMap>

    <resultMap id="MonitorResultMap" type="com.yoho.search.dal.model.BigdataMonitor">
        <result column="date_id" property="dateId" jdbcType="INTEGER"/>
        <result column="num" property="num" jdbcType="INTEGER"/>
    </resultMap>

    <sql id="Base_Column_List">
    product_skn, date_id, price_area, create_time
  </sql>

    <select id="selectLatestDateId" resultType="java.lang.Integer">
      select max(date_id) from bigdata_skn_pricearea
    </select>

    <select id="selectListByDateId" resultMap="BaseResultMap" timeout="20000">
        select
        <include refid="Base_Column_List"/>
        from bigdata_skn_pricearea where product_skn in
        <foreach item="item" index="index" collection="list" open="("
                 separator="," close=")">
            #{item}
        </foreach>
        and date_id = #{dateId,jdbcType=INTEGER}
    </select>

    <select id="selectCountGroupByDateId" resultMap="MonitorResultMap">
        SELECT date_id, count(*) num FROM bigdata_skn_pricearea where date_id in (#{yesterday}, #{beforYesterday}) GROUP BY date_id ORDER BY date_id desc
    </select>

    <select id="selectSknByDate" resultType="java.lang.Long" timeout="20000">
        SELECT product_skn FROM bigdata_skn_pricearea where date_id = #{dateId,jdbcType=VARCHAR} limit #{pageSize}
    </select>

    <delete id="deleteBatch">
        <![CDATA[
        DELETE FROM bigdata_skn_pricearea
        WHERE
        date_id = #{dateId,jdbcType=VARCHAR}
        AND
        ]]>
        product_skn in
        <foreach item="item" index="index" collection="sknList" open="(" separator="," close=")">
            #{item}
        </foreach>
    </delete>

</mapper>