这种查询语句是不可以的
select id from cloudknows.上海 where id
in(select id from cloudknows.上海 where lat>=31.220309999999998 and lat<=31.24031 and lng>=121.45716 and lng<=121.47716000000001 order by abs(lat-31.23031)+abs(lng-121.46716) asc limit 0,60)
and id not
in(select id from cloudknows.上海 where lat>=31.222309999999997 and lat<=31.24231 and lng>=121.45916 and lng<=121.47916000000001 order by abs(lat-31.23231)+abs(lng-121.46916) asc limit 0,60)
解决办法:子查询中再嵌套子查询
select id from cloudknows.上海 where id
in(select id from(select id from cloudknows.上海 where lat>=31.220309999999998 and lat<=31.24031 and lng>=121.45716 and lng<=121.47716000000001 order by abs(lat-31.23031)+abs(lng-121.46716) asc limit 0,60) as a)
and id
not in(select id from(select id from cloudknows.上海 where lat>=31.222309999999997 and lat<=31.24231 and lng>=121.45916 and lng<=121.47916000000001 order by abs(lat-31.23231)+abs(lng-121.46916) asc limit 0,60) as b)
注意子查询中的表要有别名.