|
@@ -12,21 +12,110 @@
|
|
|
sum(sale_money) AS sale_total_money
|
|
|
FROM product_market_data
|
|
|
WHERE product_id IN
|
|
|
- (SELECT product_id FROM asso_product_patent UNION
|
|
|
- SELECT product_id FROM asso_structure_patent
|
|
|
- WHERE patent_no = #{patentNo})
|
|
|
+ (SELECT product_id FROM asso_structure_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ UNION
|
|
|
+ SELECT product_id FROM asso_product_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ )
|
|
|
+ AND saleArea = #{saleArea}
|
|
|
+ GROUP BY market_date
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="patentQueryBySeason" resultMap="queryByDateMap">
|
|
|
+ SELECT CONCAT(CAST(YEAR(STR_TO_DATE(sale_time,'%Y-%m')) as CHAR),'年','第',
|
|
|
+ CAST(QUARTER(STR_TO_DATE(sale_time,'%Y-%m')) as CHAR),'季度') AS market_date,
|
|
|
+ sum(sale_money) AS sale_total_money
|
|
|
+ WHERE product_id IN
|
|
|
+ (SELECT product_id FROM asso_structure_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ UNION
|
|
|
+ SELECT product_id FROM asso_product_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ )
|
|
|
+ AND saleArea = #{saleArea}
|
|
|
+ GROUP BY market_date
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="patentQueryByMonth" resultMap="queryByDateMap">
|
|
|
+ SELECT CONCAT(CAST(YEAR(STR_TO_DATE(sale_time,'%Y-%m')) AS CHAR),'-',
|
|
|
+ CAST(MONTH(STR_TO_DATE(sale_time,'%Y-%m')) AS CHAR)) AS market_date,
|
|
|
+ sum(sale_money) AS sale_total_money
|
|
|
+ WHERE product_id IN
|
|
|
+ (SELECT product_id FROM asso_structure_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ UNION
|
|
|
+ SELECT product_id FROM asso_product_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ )
|
|
|
+ AND saleArea = #{saleArea}
|
|
|
GROUP BY market_date
|
|
|
</select>
|
|
|
|
|
|
<select id="patentQueryByYear2" resultMap="queryByDateMap">
|
|
|
SELECT CONCAT(CAST(YEAR(STR_TO_DATE(sale_time,'%Y-%m')) as CHAR),'年') AS market_date,
|
|
|
- sum(sale_money) AS sale_total_money
|
|
|
+ sum(sale_money) AS sale_total_money
|
|
|
FROM product_market_data
|
|
|
WHERE product_id IN
|
|
|
- (SELECT product_id FROM asso_product_patent UNION
|
|
|
- SELECT product_id FROM asso_structure_patent
|
|
|
- WHERE patent_no = #{patentNo})
|
|
|
- AND saleArea = #{saleArea}
|
|
|
+ (SELECT product_id FROM asso_structure_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ UNION
|
|
|
+ SELECT product_id FROM asso_product_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ )
|
|
|
+ GROUP BY market_date
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="patentQueryBySeason2" resultMap="queryByDateMap">
|
|
|
+ SELECT CONCAT(CAST(YEAR(STR_TO_DATE(sale_time,'%Y-%m')) as CHAR),'年','第',
|
|
|
+ CAST(QUARTER(STR_TO_DATE(sale_time,'%Y-%m')) as CHAR),'季度') AS market_date,
|
|
|
+ sum(sale_money) AS sale_total_money
|
|
|
+ WHERE product_id IN
|
|
|
+ (SELECT product_id FROM asso_structure_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ UNION
|
|
|
+ SELECT product_id FROM asso_product_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ )
|
|
|
+ GROUP BY market_date
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="patentQueryByMonth2" resultMap="queryByDateMap">
|
|
|
+ SELECT CONCAT(CAST(YEAR(STR_TO_DATE(sale_time,'%Y-%m')) AS CHAR),'-',
|
|
|
+ CAST(MONTH(STR_TO_DATE(sale_time,'%Y-%m')) AS CHAR)) AS market_date,
|
|
|
+ sum(sale_money) AS sale_total_money
|
|
|
+ FROM product_market_data
|
|
|
+ WHERE product_id IN
|
|
|
+ (SELECT product_id FROM asso_structure_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ UNION
|
|
|
+ SELECT product_id FROM asso_product_patent WHERE patent_no IN
|
|
|
+ <foreach collection="patentNoList" item="patentNo" index="index" open="(" close=")" separator=",">
|
|
|
+ #{patentNo}
|
|
|
+ </foreach>
|
|
|
+ )
|
|
|
GROUP BY market_date
|
|
|
</select>
|
|
|
</mapper>
|