目录

力扣第585题

目录

力扣第585题

with t as (select *,
count(tiv_2015) over(partition by tiv_2015) cnt1 ,
count(*) over(partition by lat,lon) cnt2
from insurance)
select round(sum(tiv_2016),2) tiv_2016 from t where cnt1>1 and cnt2=1;

以上代码的思路:

①明确查询需求:需求是找出 2015 年有多个相同保险总额,并且地理位置唯一的保险单,然后计算这些保险单在 2016 年的保险总额总和。

②分析所需条件:

相同 2015 年保险总额的数量:需要统计每个 tiv_2015 值对应的记录数量,筛选出数量大于 1 的记录。

地理位置的唯一性:需要统计每个 latlon 组合对应的记录数量,筛选出数量等于 1 的记录。