请教关于创建视图的问题

baobao28 2012-11-15 08:57:53
有这么一个查询语句如下,我想把这个查询做成一个视图在程序中调用,但是where那部分是我想要传递的查询条件,如果我把这个查询语句做成视图以后,怎么能把查询条件传递进去

with aa as
(select t.code, t.code_name from code t where t.code_type_id = 12),
bb as
(select t2.apply_type, t2.hospital_id, sum(cf.fee_amount) fee
from consult_fee cf
left join consult_booking t2
on cf.booking_id = t2.id
group by t2.apply_type, t2.hospital_id)
select t4.hospital_name, aa.code_name, t.counts, bb.fee, t4.balance
from (select t2.apply_type, t2.hospital_id, count(t1.id) counts
from consult_report t1
left join consult_booking t2
on t1.consult_booking_id = t2.id
left join consult_fee t3
on t2.id = t3.booking_id
left join doctor_info t4
on t1.expert_id = t4.id
where t1.consultation_status in (6, 7)
and t4.at_hospital_id = 100
and t2.hospital_id = 1
and t1.CONSULTATION_TIME between
to_date('2012-01-01', 'yyyy-mm-dd') and sysdate
group by t2.apply_type, t2.hospital_id) t
left join aa
on t.apply_type = aa.code
left join bb
on t.apply_type = bb.apply_type
left join hospital_info t4
on t.hospital_id = t4.id;
...全文
158 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
baobao28 2012-11-15
  • 打赏
  • 举报
回复
测试了一下可以通过这种方式实现,但是又遇到一个问题,通过EXECUTE IMMEDIATE 执行动态生成的sql语句的效率太低了
quanhj 2012-11-15
  • 打赏
  • 举报
回复
引用 6 楼 baobao28 的回复:
有一个大胆的想法,能不能视图接收查询条件,然后把这个查询封装在函数里,在视图传递查询条件到函数,然后函数返回查询结果给视图,视图再返回给调用的程序呢
这样能传多个条件么?
baobao28 2012-11-15
  • 打赏
  • 举报
回复
有一个大胆的想法,能不能视图接收查询条件,然后把这个查询封装在函数里,在视图传递查询条件到函数,然后函数返回查询结果给视图,视图再返回给调用的程序呢
fw0124 2012-11-15
  • 打赏
  • 举报
回复
如果一定要带上条件输入,那就没法做成视图了。
baobao28 2012-11-15
  • 打赏
  • 举报
回复
拜托大家仔细帮忙看一下,and t2.hospital_id = 1这个可以拿出来放到上面那个select里面,但是剩下这2个查询条件就拿不出来了啊,因为用到了最内层的主表作为关联的 and t4.at_hospital_id = 100 and t1.CONSULTATION_TIME between to_date('2012-01-01', 'yyyy-mm-dd') and sysdate
english325 2012-11-15
  • 打赏
  • 举报
回复
你创建的视图里增加带where的字段,然后创建视图,再select * from 视图 where 条件。
baobao28 2012-11-15
  • 打赏
  • 举报
回复
这样不行啊,因为这个查询里面那层是进行数据统计计算的,如果不把条件在里面加上的话,在外面加就没有意义了啊
人生无悔 2012-11-15
  • 打赏
  • 举报
回复
視圖本身不需查詢倏件限制,只需關聯倏件就好了,創建完視圖後,根據你的查詢倏件,直接從視圖中加where取出即可
logo 设计不会,就这样先凑合了写道 Fuseblog预备开发带在线SHOP功能的个人博客系统.仿照Appfuse 提供一个完全自动化的ant构建脚本.在线SHOP的数据库建模图例已经 在博客中贴出.感兴趣的和我一起搭建,嘻嘻 文档博客地址: http://forum.sinomagazine.com 开发环境: Jcreator-4.5 JDK-1.5 Ant-1.6.1 MYSQL-5 Tomcat-5.5 Spring-2.5.6 Ibatis-2.3.4 问题事项: 1.在windows系统中,命令行中执行ant命令时,当指定的 构建脚本文件中包含中文字符,而构建脚本文件的编码是UTF-8时将会 Invalid byte 1 of 1-byte UTF-8 sequence. 的错误.这个问题尚未 知解决,故先采用GBK的编码. 2.在Jcreator中创建的项目,不支持UTF-8编码,缺省GBK. 以下先列出初步的的ant构建文件的代码: build.xml 问题,并保证构建成功。 二、工具篇: 持续集成 ... by lixw 2008-09-09 回复 (3) 网络相册开发(6)——ant 自动 ... 在工程目录下创建libs/hibernate/ ,放入 hibernate-tools-3.2.0.ga.jar jtidy-4aug2000r7-dev.jar build.properties project.name=sw project.version=1.0 basedir=. build.dir =${basedir}/build web.dir = ${basedir}/WebR ... by vyyv 2009-03-12 回复 (1) ant配置文件实例详解 build.xml 代码 xml version="1.0" encoding="UTF-8"?> 问题。 Antenna介绍 Ant ... by pandonix 2007-08-28 回复 (9) 用Ant 来编译打包您的Anroid应用 ... 通过 activityCreator.py --out myproject your.package.name.ActivityName 命令可以生成一个project ,生成project下面有个bulid.xml 文件,那个东西就可以帮你打包生成了。 来看下ant是怎么做的。 问题,包括诸如功能:网页装载行动,无缝的跟faces的导航整合,动态视图的ID分配和管理参数分析,无需配置,兼容其他JSF框架。P ... by zly06 2009-09-09 回复 (0) 相关博客 ant模板 < ? xml version = "1.0" ?> < project name= "tax-calculator" default= "package" > < property name= "src.dir" location= "src" / > ... by article2008 2008-07-30 回复 (0) 代码备份build.xml

17,086

社区成员

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

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