当前位置:编程学习 > JAVA >>

请问怎么在查找结果中继续查找

在根据条件查找出来的显示在grid表格中,再输入条件在已经查出的结果中继续查找。
最好是只用到select语句的方式。因为我看到原来写的就是全select语句,现在要改成写在配置文件里的,原来的实在太乱没法看。求个思路。
我的思路是这样的:在第一次查找出来的结果中根据第二次的条件进行查找。
但是发现一个问题,比如图中:

我第一次输入的条件为M有5条结果,第二次输入MI有2条,第三次再输入M还是2条,但第四次输入M结果变成了5条。而其要求为在上一次的结果中继续检索,是不能比上次的结果数目多的。想到在action里判断,如果条件与上一次重复就return,但简单检索还可以,复杂检索有十几个条件,看起来好麻烦。
求指教思路,最好是纯select语句的
--------------------编程问答-------------------- 建一张临时表
判断是不是在结果进行2次查询
不是,清空它,进行条件查询,把结果放进去临时表
是,在这张临时表上进行条件查询
典型的空间换效率 --------------------编程问答-------------------- 都是同一个表操作,为啥不and呢? --------------------编程问答-------------------- 这个问题纯用sql就能解决了, 查询与复合条件查询 --------------------编程问答-------------------- 在action根据查询次数动态拼接 sql
select * from tmp where ename like '%name1%' and ename like '%name2%'  and ...... --------------------编程问答-------------------- 似乎真的是把问题想复杂了,条件and就好了 --------------------编程问答-------------------- 给你提供一个思路吧.  如果用户的查询不多的情况下可以使用.  并且只查询一张表的情况下. 你可以使用无限嵌套撒.
 就想你给出的那个嵌套SQL一样. 第他查一次嵌套一次. 但是如果数据量大.或者查询次数累计比较多. 那是甚用. --------------------编程问答--------------------
引用 2 楼 oh_Maxy 的回复:
都是同一个表操作,为啥不and呢?

嗯多谢版主,脑袋刚转过弯来 --------------------编程问答--------------------
引用 4 楼 jiaxinyuck110 的回复:
在action根据查询次数动态拼接 sql
select * from tmp where ename like '%name1%' and ename like '%name2%'  and ......

ok多谢啦 --------------------编程问答--------------------
引用 5 楼 wwx0613 的回复:
似乎真的是把问题想复杂了,条件and就好了

嗯嗯3Q
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,