由于我是两个不同业务的表放在一起查询.就要保持列数和列名一样,这里就用到了union all 语法
select id ,book_name from book union all
select order_id,order_name from order
上边的语句适合不带条件的查询,
如果当查询需要带条件比如排序比如where 跟上条件这时候就需要将两个语句都改成子查询,即可解决问题
select * from ( select id ,book_name from book) a union all
select * from (select order_id,order_name from order) a
由于在mybatis中希望通过if标签来将整个select 语句自由组合,其实看过手册就知道,if标签只能用来条件的组合,所以将整个select语句自由组合你会发现查询不会根据你设置的条件产生作用,这也是需要不断学习不断 纠错的过程
后来还用到了计算距离的查询,这里引用了这个博主的
https://blog.csdn.net/MaNongXf/article/details/84977927
Mysql实现根据经纬度查询周围的商家,并按距离进行排序
网友评论