题目自寻:
解题思路:
去年投保额和至少1人一样就行,
而且经纬度不能和其他任何一人一样。
求这样投保人的2016年的投保金额之和。
它是分3个条件来的。我们每一个每一个去查就行了。
昨天,看一个视频,她说,假如SQL你不能一下写出来,那你就从最简单,最简单的去写起。这个SQL,我也正是用这样的方法,写出来的。
天下大事,必作于细。
天下难事,必作于易。
参考答案:
select round(sum(i.tiv_2016),2) as tiv_2016 from Insurance i
where exists (select 1 from Insurance i2 where i.pid != i2.pid and i. tiv_2015 = i2.tiv_2015)
and not exists(select 1 from Insurance i2 where i.pid != i2.pid and i.lat = i2.lat and i.lon = i2.lon )