| New file |
| | |
| | | <?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="cn.gistack.sm.sjztmd.mapper.TbResAndDykeAllMapper"> |
| | | |
| | | <select id="getStatisticsTable" resultType="cn.gistack.sm.sjztmd.vo.ResAndDykeAll"> |
| | | SELECT |
| | | a.*, |
| | | att."p_ad_code" pcode, |
| | | att."p_ad_name" pname, |
| | | att."ad_grad" adGrad, |
| | | ROUND(IFNULL(b.lengthSum, 0) / 1000, 3) AS lengthSum, |
| | | ROUND(IFNULL(b.levelOneLengthOne, 0) / 1000, 3) AS levelOneLengthOne, |
| | | ROUND(IFNULL(b.levelOneLengthTwo, 0) / 1000, 3) AS levelOneLengthTwo, |
| | | ROUND(IFNULL(b.levelOneLengthThree, 0) / 1000, 3) AS levelOneLengthThree, |
| | | ROUND(IFNULL(b.levelTwoLengthOne, 0) / 1000, 3) AS levelTwoLengthOne, |
| | | ROUND(IFNULL(b.levelTwoLengthTwo, 0) / 1000, 3) AS levelTwoLengthTwo, |
| | | ROUND(IFNULL(b.levelTwoLengthThree, 0) / 1000, 3) AS levelTwoLengthThree, |
| | | ROUND(IFNULL(b.levelThreeLengthOne, 0) / 1000, 3) AS levelThreeLengthOne, |
| | | ROUND(IFNULL(b.levelThreeLengthTwo, 0) / 1000, 3) AS levelThreeLengthTwo, |
| | | ROUND(IFNULL(b.levelThreeLengthThree, 0) / 1000, 3) AS levelThreeLengthThree, |
| | | ROUND(IFNULL(b.levelFourLengthOne, 0) / 1000, 3) AS levelFourLengthOne, |
| | | ROUND(IFNULL(b.levelFourLengthTwo, 0) / 1000, 3) AS levelFourLengthTwo, |
| | | ROUND(IFNULL(b.levelFourLengthThree, 0) / 1000, 3) AS levelFourLengthThree, |
| | | ROUND(IFNULL(b.levelFiveLengthOne, 0) / 1000, 3) AS levelFiveLengthOne, |
| | | ROUND(IFNULL(b.levelFiveLengthTwo, 0) / 1000, 3) AS levelFiveLengthTwo, |
| | | ROUND(IFNULL(b.levelFiveLengthThree, 0) / 1000, 3) AS levelFiveLengthThree |
| | | FROM |
| | | ( |
| | | SELECT |
| | | a."ad_code" CODE, |
| | | a."ad_name" NAME, |
| | | count( b."danger_level" ) AS resNum, |
| | | sum( CASE WHEN b."eng_scal" = '大(1)型' AND b."danger_level" = '1' THEN 1 ELSE 0 END ) AS bigOneNum, |
| | | sum( CASE WHEN b."eng_scal" = '大(1)型' AND b."danger_level" = '2' THEN 1 ELSE 0 END ) AS bigTwoNum, |
| | | sum( CASE WHEN b."eng_scal" = '大(1)型' AND b."danger_level" = '3' THEN 1 ELSE 0 END ) AS bigThreeNum, |
| | | sum( CASE WHEN b."eng_scal" = '大(2)型' AND b."danger_level" = '1' THEN 1 ELSE 0 END ) AS bigtOneNum, |
| | | sum( CASE WHEN b."eng_scal" = '大(2)型' AND b."danger_level" = '2' THEN 1 ELSE 0 END ) AS bigtTwoNum, |
| | | sum( CASE WHEN b."eng_scal" = '大(2)型' AND b."danger_level" = '3' THEN 1 ELSE 0 END ) AS bigtThreeNum, |
| | | sum( CASE WHEN b."eng_scal" = '中型' AND b."danger_level" = '1' THEN 1 ELSE 0 END ) AS midOneNum, |
| | | sum( CASE WHEN b."eng_scal" = '中型' AND b."danger_level" = '2' THEN 1 ELSE 0 END ) AS midTwoNum, |
| | | sum( CASE WHEN b."eng_scal" = '中型' AND b."danger_level" = '3' THEN 1 ELSE 0 END ) AS midThreeNum, |
| | | sum( CASE WHEN b."eng_scal" = '小(1)型' AND b."danger_level" = '1' THEN 1 ELSE 0 END ) AS smallOneNum, |
| | | sum( CASE WHEN b."eng_scal" = '小(1)型' AND b."danger_level" = '2' THEN 1 ELSE 0 END ) AS smallTwoNum, |
| | | sum( CASE WHEN b."eng_scal" = '小(1)型' AND b."danger_level" = '3' THEN 1 ELSE 0 END ) AS smallThreeNum, |
| | | sum( CASE WHEN b."eng_scal" = '小(2)型' AND b."danger_level" = '1' THEN 1 ELSE 0 END ) AS smalltOneNum, |
| | | sum( CASE WHEN b."eng_scal" = '小(2)型' AND b."danger_level" = '2' THEN 1 ELSE 0 END ) AS smalltTwoNum, |
| | | sum( CASE WHEN b."eng_scal" = '小(2)型' AND b."danger_level" = '3' THEN 1 ELSE 0 END ) AS smalltThreeNum |
| | | FROM |
| | | YWXT."att_ad_base" a |
| | | LEFT JOIN ( |
| | | SELECT |
| | | c."danger_level", |
| | | a."eng_scal", |
| | | e."guid" AS countyCode, |
| | | f."guid" AS cityCode, |
| | | g."guid" AS provinceCode |
| | | FROM |
| | | "SJZT_MD"."att_res_base" a |
| | | RIGHT JOIN ( SELECT * FROM "SJZT_MD"."tb_res_general_investigation_state" WHERE "danger_level" <![CDATA[<>]]> '0' AND "check_state" = '3' ) c ON a."guid" = c."res_guid" |
| | | LEFT JOIN YWXT."att_ad_base" d ON d."ad_code" = a."interior_ad_guid" |
| | | LEFT JOIN YWXT."att_ad_base" e ON d."p_ad_code" = e."ad_code" |
| | | LEFT JOIN YWXT."att_ad_base" f ON e."p_ad_code" = f."ad_code" |
| | | LEFT JOIN YWXT."att_ad_base" g ON f."p_ad_code" = g."ad_code" |
| | | ) b ON (( |
| | | b.countyCode = a."guid" |
| | | ) |
| | | OR ( b.cityCode = a."guid" ) |
| | | OR ( b.provinceCode = a."guid" )) |
| | | |
| | | GROUP BY |
| | | a."ad_code", |
| | | a."ad_name" |
| | | ) a |
| | | LEFT JOIN ( |
| | | SELECT |
| | | a."ad_code" CODE, |
| | | a."ad_name" NAME, |
| | | sum( b."danger_length" ) AS lengthSum, |
| | | sum( CASE WHEN b."dyke_level" = '1级' AND b."danger_level" = '1' THEN b."danger_length" ELSE 0 END ) AS levelOneLengthOne, |
| | | sum( CASE WHEN b."dyke_level" = '1级' AND b."danger_level" = '2' THEN b."danger_length" ELSE 0 END ) AS levelOneLengthTwo, |
| | | sum( CASE WHEN b."dyke_level" = '1级' AND b."danger_level" = '3' THEN b."danger_length" ELSE 0 END ) AS levelOneLengthThree, |
| | | sum( CASE WHEN b."dyke_level" = '2级' AND b."danger_level" = '1' THEN b."danger_length" ELSE 0 END ) AS levelTwoLengthOne, |
| | | sum( CASE WHEN b."dyke_level" = '2级' AND b."danger_level" = '2' THEN b."danger_length" ELSE 0 END ) AS levelTwoLengthTwo, |
| | | sum( CASE WHEN b."dyke_level" = '2级' AND b."danger_level" = '3' THEN b."danger_length" ELSE 0 END ) AS levelTwoLengthThree, |
| | | sum( CASE WHEN b."dyke_level" = '3级' AND b."danger_level" = '1' THEN b."danger_length" ELSE 0 END ) AS levelThreeLengthOne, |
| | | sum( CASE WHEN b."dyke_level" = '3级' AND b."danger_level" = '2' THEN b."danger_length" ELSE 0 END ) AS levelThreeLengthTwo, |
| | | sum( CASE WHEN b."dyke_level" = '3级' AND b."danger_level" = '3' THEN b."danger_length" ELSE 0 END ) AS levelThreeLengthThree, |
| | | sum( CASE WHEN b."dyke_level" = '4级' AND b."danger_level" = '1' THEN b."danger_length" ELSE 0 END ) AS levelFourLengthOne, |
| | | sum( CASE WHEN b."dyke_level" = '4级' AND b."danger_level" = '2' THEN b."danger_length" ELSE 0 END ) AS levelFourLengthTwo, |
| | | sum( CASE WHEN b."dyke_level" = '4级' AND b."danger_level" = '3' THEN b."danger_length" ELSE 0 END ) AS levelFourLengthThree, |
| | | sum( CASE WHEN b."dyke_level" = '5级' AND b."danger_level" = '1' THEN b."danger_length" ELSE 0 END ) AS levelFiveLengthOne, |
| | | sum( CASE WHEN b."dyke_level" = '5级' AND b."danger_level" = '2' THEN b."danger_length" ELSE 0 END ) AS levelFiveLengthTwo, |
| | | sum( CASE WHEN b."dyke_level" = '5级' AND b."danger_level" = '3' THEN b."danger_length" ELSE 0 END ) AS levelFiveLengthThree |
| | | FROM |
| | | YWXT."att_ad_base" a |
| | | RIGHT JOIN ( |
| | | SELECT |
| | | a."dyke_level", |
| | | c."danger_level", |
| | | c."danger_length", |
| | | d."guid" AS countyCode, |
| | | e."guid" AS cityCode, |
| | | f."guid" AS provinceCode |
| | | FROM |
| | | "SJZT_MD"."tb_res_dyke" a |
| | | RIGHT JOIN ( |
| | | SELECT |
| | | a.* |
| | | FROM |
| | | SJZT_MD."tb_dyke_unit_danger" a |
| | | LEFT JOIN SJZT_MD."tb_dyke_investigation_state" b ON a."dyke_id" = b."dyke_guid" |
| | | WHERE |
| | | a."danger_level" <![CDATA[<>]]> '0' |
| | | AND b."check_state" = '3' |
| | | ) c ON a."guid" = c."dyke_id" |
| | | LEFT JOIN YWXT."att_ad_base" d ON d."ad_code" = a."ad_code" |
| | | LEFT JOIN YWXT."att_ad_base" e ON d."p_ad_code" = e."ad_code" |
| | | LEFT JOIN YWXT."att_ad_base" f ON e."p_ad_code" = f."ad_code" |
| | | ) b ON (( |
| | | b.countyCode = a."guid" |
| | | ) |
| | | OR ( b.cityCode = a."guid" ) |
| | | OR ( b.provinceCode = a."guid" )) |
| | | |
| | | GROUP BY |
| | | a."ad_code", |
| | | a."ad_name" |
| | | ) b ON a.CODE = b.CODE |
| | | left join YWXT."att_ad_base" att on a.CODE = att."guid" |
| | | where att."p_ad_code"= #{code} |
| | | |
| | | |
| | | |
| | | </select> |
| | | </mapper> |
| | | |