关于Oracle多条件组合查询

CaptainGan 2011-03-04 03:07:31
最近在做一个DEMO过程中遇到有很多6个条件需要相互组合产生组合条件,进行查询。在网上查了很多,比较多的就是Ibatis的模糊查询和Hibernate的hql的查询,有谁能告诉我不用框架怎样能够实现多条件的组合查询。

谢谢各位了!!
...全文
822 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
CaptainGan 2011-03-07
  • 打赏
  • 举报
回复
我现在正在进行的,是将这五个条件的每种组合写成代码,这样太费力了,我是想的是怎样以最简单的方式能够将五个条件的组合的条件,进行SQL查询。
CaptainGan 2011-03-07
  • 打赏
  • 举报
回复
也就是上面5个条件,任意一个、两个、或者多个进行组合成的SQL语句,进行查询。
CaptainGan 2011-03-07
  • 打赏
  • 举报
回复

SELECT x.*
from (SELECT z.*, rownum numbers
from pro_dowload_doc_log z
where rownum <= nextPage
and z.customer_id = ?
and z.dowload_time between to_date(?, 'YYYY-MM-DD HH24:MI:SS') and
to_date(?, 'YYYY-MM-DD HH24:MI:SS')
and z.file_name = ?
and z.customer_doc_num = ?) x
where x.numbers > beforePage;

差不多就是上面 ? 处的条件。谢谢哈
lxyzxq2008 2011-03-05
  • 打赏
  • 举报
回复

--你列出具体需求和数据来,只是简单一说,大家不知道你到底要什么效果,用Oracle肯定可以实现,这个放心!


biristone 2011-03-05
  • 打赏
  • 举报
回复
又见Ibatis和Hibernate受害者,同情下。。
物润声无 2011-03-04
  • 打赏
  • 举报
回复
select
case
when a = 1 then ...
when a = 2 then ...
...
else
...
end
from dual;

还是拼sql吧
huangdh12 2011-03-04
  • 打赏
  • 举报
回复
ibatis 里面有动态判断条件的吧。 仔细去看看。。
CaptainGan 2011-03-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 yy_mm_dd 的回复:]

在where 条件里用case when不就可以了。。。或者是使用and,or组合使用
[/Quote]

冒昧请求下,能否给个例子。。我对Oracle不是很熟悉,才接触。
beita258 2011-03-04
  • 打赏
  • 举报
回复
支持动态sql ,哪个条件需要就加上哪个条件
YY_MM_DD 2011-03-04
  • 打赏
  • 举报
回复
在where 条件里用case when不就可以了。。。或者是使用and,or组合使用
ma309385560 2011-03-04
  • 打赏
  • 举报
回复
那就拼sql

String sql="select * from table where 1=1"
if(a!=null){
sql =sql+ "and a = "+a ;
}

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧