以前那个系统因为查询效率非常低下,所以要重做。
查询的字段,和查询条件都是要动态拼接的。因为之前的做法是把所有要显示的字段和查询的条件都写在一个视图里,查询的时候直接拼接where 条件就行了。基础视图查询了太多的字段(很多字段还是用了函数),关联了太多的表,倒是几乎没子查询。
现在他们想把基础视图简化,只查列表显示的常用字段,然后查询时去动态的拼表连接JOIN和WHERE条件,我想了半天也没想出来应该怎么做。主要就是,查询条件来自不同的表,以前可以直接拼field1 = ? And field2 in (?,?...),可是现在fields都在了不同的表,怎么办呢?谁能提供一个好思路,谢了!
可以用ibatis框架来做,将改变的值来作为参数进行传递。并且在ibatis里,可以根据条件来添加where字句中的约束
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。