<?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="StatisticsMapper">
<resultMap id="AreaDataResultMap" type="com.lymsh.platform.reportdata.model.AreaData">
<result column="province_id" property="provinceId" jdbcType="VARCHAR"/>
<result column="province_name" property="provinceName" jdbcType="VARCHAR"/>
<result column="year" property="year" jdbcType="VARCHAR"/>
<result column="val" property="val" jdbcType="INTEGER"/>
</resultMap>
<select id="queryProvincePatients" resultMap="AreaDataResultMap" parameterType="java.lang.String">
SELECT
ODS_D_PROVINCE.PROVINCE_ID as province_id,
ODS_D_PROVINCE.PROVINCE as province_name,
<if test="year != null and year != ''">
ODS_D_DIM_DATE.YEAR_1 as year,
</if>
COUNT(ODS_F_GRAVIDA_RECORD.RECORD_ID) as val
FROM
ODS_D_PROVINCE,
ODS_D_DIM_DATE,
ODS_F_GRAVIDA_RECORD,
ODS_D_HOSPITAL,
ODS_D_CITY
WHERE
( ODS_F_GRAVIDA_RECORD.HOSPITAL_NO=ODS_D_HOSPITAL.HOSPITAL_NO )
AND ( ODS_D_CITY.PROVINCE_ID=ODS_D_PROVINCE.PROVINCE_ID )
AND ( ODS_F_GRAVIDA_RECORD.INSERT_DATE=ODS_D_DIM_DATE.DATE_1 )
AND ( ODS_D_HOSPITAL.CITY_ID=ODS_D_CITY.CITY_ID(+) )
<if test="year != null and year != ''">
AND ODS_D_DIM_DATE.YEAR_1=${year}
</if>
GROUP BY
ODS_D_PROVINCE.PROVINCE_ID,
ODS_D_PROVINCE.PROVINCE
<if test="year != null and year != ''">
,ODS_D_DIM_DATE.YEAR_1
</if>
</select>
<select id="queryProvinceRiskPatients" resultMap="AreaDataResultMap" parameterType="java.lang.String">
SELECT
ODS_D_PROVINCE.PROVINCE_ID as province_id,
ODS_D_PROVINCE.PROVINCE as province_name,
<if test="year != null and year != ''">
ODS_D_DIM_DATE.YEAR_1 as year,
</if>
COUNT(ODS_F_GRAVIDA_RECORD.RECORD_ID) as val
FROM
ODS_D_PROVINCE,
ODS_D_DIM_DATE,
ODS_F_GRAVIDA_RECORD,
ODS_F_EXAMINE_HISTORY,
ODS_D_HOSPITAL,
ODS_D_CITY
WHERE
( ODS_F_GRAVIDA_RECORD.RECORD_ID=ODS_F_EXAMINE_HISTORY.RECORD_ID(+) )
AND ( ODS_F_GRAVIDA_RECORD.HOSPITAL_NO=ODS_D_HOSPITAL.HOSPITAL_NO )
AND ( ODS_D_CITY.PROVINCE_ID=ODS_D_PROVINCE.PROVINCE_ID )
AND ( ODS_F_GRAVIDA_RECORD.INSERT_DATE=ODS_D_DIM_DATE.DATE_1 )
AND ( ODS_D_HOSPITAL.CITY_ID=ODS_D_CITY.CITY_ID(+) )
AND
(
ODS_F_EXAMINE_HISTORY.EXAMINE_HISTORY_NUM = 1
AND
ODS_F_EXAMINE_HISTORY.HIGH_RISK_FACTOR NOT IN ( '健康','健康,无' )
)
<if test="year != null and year != ''">
AND ODS_D_DIM_DATE.YEAR_1=${year}
</if>
GROUP BY
ODS_D_PROVINCE.PROVINCE_ID,
ODS_D_PROVINCE.PROVINCE
<if test="year != null and year != ''">
,ODS_D_DIM_DATE.YEAR_1
</if>
</select>
</mapper>