作者 朱兆平

直接改配sql优化

... ... @@ -45,19 +45,35 @@
<select id="selectList" resultMap="BaseResultMap" parameterType="com.tianbo.analysis.model.MANIFEST_AIR_CHANGE" >
SELECT
<include refid="Custom_Receipt" />
<include refid="Custom_Receipt" />,RN
FROM
(
SELECT
<include refid="Custom_Receipt" />
FROM
MANIFEST_AIR_CHANGE t1
AUTOID, FLIGHTNO, CHANGE_FLIGHTNO, WAYBILLNOMASTER, CHANGE_WAYBILLNOMASTER, CONT,
t2.CREATEDATE, CHANGETIME, CARRIER, CHANGE_CARRIER, FLIGHT_DATE, CHANGE_FLIGHT_DATE,CUSTOMS_CODE,RECEIPTION,t2.RN
FROM (
select
<include refid="Base_Column_List" />
from
MANIFEST_AIR_CHANGE
where 1=1
<if test="flightno != null and flightno != ''">
and FLIGHTNO = #{flightno,jdbcType=VARCHAR}
</if>
<if test="flightDate != null">
AND FLIGHT_DATE = #{flightDate,jdbcType=DATE}
</if>
<if test="waybillnomaster != null and waybillnomaster != ''">
AND WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
</if>
) t1
LEFT JOIN (
SELECT
RECEIPTION,
MESSAGEAUTOID,
MESSAGETYPE,
ROW_NUMBER () OVER ( PARTITION BY MESSAGEAUTOID ORDER BY CREATEDATE DESC ) rn
CREATEDATE,
ROW_NUMBER () OVER ( PARTITION BY MESSAGEAUTOID ORDER BY CREATEDATE DESC ) RN
FROM
SENDLOG
where
... ... @@ -66,15 +82,6 @@
AND t2.rn = 1
) t3
where 1=1
<if test="flightno != null and flightno != ''">
and FLIGHTNO = #{flightno,jdbcType=VARCHAR}
</if>
<if test="flightDate != null">
AND FLIGHT_DATE = #{flightDate,jdbcType=DATE}
</if>
<if test="waybillnomaster != null and waybillnomaster != ''">
AND WAYBILLNOMASTER = #{waybillnomaster,jdbcType=VARCHAR}
</if>
order by CREATEDATE desc
</select>
... ...