Product15DaySalesnumMapper.xml
3.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?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.Product15DaySalesNumMapper" >
<resultMap id="BaseResultMap" type="com.yoho.search.dal.model.Product15DaySalesNum" >
<id column="product_skn" property="productSkn" jdbcType="INTEGER" />
<id column="date_id" property="dateId" jdbcType="INTEGER" />
<result column="sales_num" property="salesNum" 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, sales_num
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="com.yoho.search.dal.model.Product15DaySalesNumKey" >
select
<include refid="Base_Column_List" />
from product_15day_salesnum
where product_skn = #{productSkn,jdbcType=INTEGER}
and date_id = #{dateId,jdbcType=INTEGER}
limit 1
</select>
<delete id="deleteByPrimaryKey" parameterType="com.yoho.search.dal.model.Product15DaySalesNumKey" >
delete from product_15day_salesnum
where product_skn = #{productSkn,jdbcType=INTEGER}
and date_id = #{dateId,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.yoho.search.dal.model.Product15DaySalesNum" >
insert into product_15day_salesnum (product_skn, date_id, sales_num
)
values (#{productSkn,jdbcType=INTEGER}, #{dateId,jdbcType=INTEGER}, #{salesNum,jdbcType=INTEGER}
)
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.yoho.search.dal.model.Product15DaySalesNum" >
update product_15day_salesnum
<set >
<if test="salesNum != null" >
sales_num = #{salesNum,jdbcType=INTEGER},
</if>
</set>
where product_skn = #{productSkn,jdbcType=INTEGER}
and date_id = #{dateId,jdbcType=INTEGER}
</update>
<select id="selectSalesNumOfLatestDate" resultMap="BaseResultMap" timeout="20000">
<![CDATA[
select * from product_15day_salesnum p
where p.product_skn in
]]>
<foreach item="item" index="index" collection="skns"
open="(" separator="," close=")">
#{item}
</foreach>
and date_id = #{dateid}
</select>
<select id="selectBySkn" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
select * from product_15day_salesnum
where product_skn =#{skn}
order by date_id desc
limit 1
</select>
<select id="selectBySknAndDate" resultMap="BaseResultMap" parameterType="com.yoho.search.dal.model.Product15DaySalesNumKey" >
select * from product_15day_salesnum
where product_skn = #{productSkn,jdbcType=INTEGER}
and date_id = #{dateId,jdbcType=INTEGER}
limit 1
</select>
<select id="selectLatestDateId" resultType="java.lang.Integer">
select max(date_id) from product_15day_salesnum
</select>
<select id="selectCountGroupByDateId" resultMap="MonitorResultMap">
SELECT date_id, count(*) num FROM product_15day_salesnum where date_id in (#{yesterday}, #{beforYesterday}) GROUP BY date_id ORDER BY date_id desc
</select>
</mapper>