求助,套用when case

原sql

SQL codeselect pgdwgms.isse_no, pgdwgms.dwg_no

from pgdwgms, pgissetr, pgappref

where (pgissetr.isse_no like '%06%' and pgappref.upd_who = '1001' and

pgappref.table_no = '1' and pgappref.record_type = '4' and

pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no)

or (pgdwgms.dwg_no like '%SAA%' and pgappref.upd_who = '1001' and

pgappref.table_no = '1' and pgappref.record_type = '4' and

pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no)

or (pgdwgms.dwg_name_j like '%支架%' and pgappref.upd_who = '1001' and

pgappref.table_no = '1' and pgappref.record_type = '4' and

pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no)

or (pgdwgms.dwg_name_e like '%支架%' and pgappref.upd_who = '1001' and

pgappref.table_no = '1' and pgappref.record_type = '4' and

pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no)

or (pgissetr.title_j like '%ML-GS%' and

pgappref.upd_who = '1001' and pgappref.table_no = '1' and

pgappref.record_type = '4' and pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no)

or (pgissetr.title_j like '%ML-GS%' and

pgappref.upd_who = '1001' and pgappref.table_no = '1' and

pgappref.record_type = '4' and pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no)

想达到类似于这句sql效果

SQL codeselect * from(

select Rt_Basic_Data.*,

(case when Parent_dwg_no like '%SA%' then 1 else 0 end) title_weight,

(case when parent_rev_no like '%1%' then 1 else 0 end) dept_weight,

(case when dwg_no like '%G%' then 1 else 0 end) dwg_weight

from Rt_Basic_Data

) where (title_weight+dept_weight)>0

order by (title_weight+dept_weight) desc

我改成如下格式,执行无效

SQL codeselect * from(

select pgdwgms.isse_no, pgdwgms.dwg_no,

(case when (pgissetr.isse_no like '%06%' and pgappref.upd_who = '1001' and

pgappref.table_no = '1' and pgappref.record_type = '4' and

pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no) then 1 else 0 end) search_isse_no,

(case when (pgdwgms.dwg_no like '%SAA%' and pgappref.upd_who = '1001' and

pgappref.table_no = '1' and pgappref.record_type = '4' and

pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no) then 1 else 0 end) search_dwg_no,

(case when (pgdwgms.dwg_name_j like '%支架%' and pgappref.upd_who = '1001' and

pgappref.table_no = '1' and pgappref.record_type = '4' and

pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no) then 1 else 0 end) search_dwg_name_j,

(case when (pgdwgms.dwg_name_e like '%支架%' and pgappref.upd_who = '1001' and

pgappref.table_no = '1' and pgappref.record_type = '4' and

pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no) then 1 else 0 end) search_dwg_name_e,

(case when (pgissetr.title_j like '%ML-GS%' and

pgappref.upd_who = '1001' and pgappref.table_no = '1' and

pgappref.record_type = '4' and pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no) then 1 else 0 end) search_title_j,

(case when (pgissetr.title_e like '%ML-GS%' and

pgappref.upd_who = '1001' and pgappref.table_no = '1' and

pgappref.record_type = '4' and pgappref.seq_no = pgissetr.seq_no and

pgissetr.isse_no = pgdwgms.isse_no) then 1 else 0 end) search_title_e

from pgdwgms, pgissetr, pgappref

)where (search_isse_no+search_dwg_no+search_dwg_name_j+search_dwg_name_e+search_title_j+search_title_e)>0

order by (search_isse_no+search_dwg_no+search_dwg_name_j+search_dwg_name_e+search_title_j+search_title_e) desc

oracle case套case,,套用when case相关推荐

  1. c语言case的应用,switch、case的使用

    代码如下: #include main() { char c; printf("please input '0' to '9' ;"); c=getchar(); switch(c ...

  2. scala case语句_Scala模式与case语句匹配

    scala case语句 Scala supports inbuilt pattern matching mechanism which is one of the more powerful fea ...

  3. c语言switch case解释,C语言switch case语句详解

    C语言虽然没有限制 if else 能够处理的分支数量,但当分支过多时,用 if else 处理会不太方便,而且容易出现 if else 配对出错的情况.例如,输入一个整数,输出该整数对应的星期几的英 ...

  4. c语言中case的作用,C语言case的用法

    witch(整型表达式) { case1:printf("case1 ");break; case2:case5:printf("case2or5 ");bre ...

  5. 13日直播预告丨Oracle多套库整合到多租户平台案例分享

    Oracle多套库整合到多租户平台案例分享-1月13日20:00 Oracle推出的19c版本作为12cR2的长期支持版本后,很多客户都逐渐将数据库迁移或者升级到19c.你是否也需要将数据库升级到19 ...

  6. oracle恢复帐套,Oracle :如何将oracle帐套恢复到另一帐套?

    Oracle 常见问题 如何将oracle帐套恢复到另一帐套? 可以使用oracle的外部命令exp/imp,一般存在于\oracle\ora81\bin目录下,类似于sybase的bcp命令,不过比 ...

  7. c语言case套case,switch…case

    说明 就像if语句,switch-case允许Arduino根据不同的条件运行不同的的程序代码.switch语句通过对一个变量的值与case语句中指定的值进行比较.当一个case语句中的指定值与swi ...

  8. oracle中使用 (trunc\add_months\last_day\case when)根据二月的天数判断是平年(二月28天)还是闰年(二月29天)

    思路: trunc(日期,'year')对年截取,外层嵌套 add_months(日期,数字),数字写1获得2月月份,外层嵌套last_day获得二月最后一天的dd,外层嵌套 to_char(日期,' ...

  9. switch case穿透Java_Switch语句的case穿透

    Switch语句的case穿透 一 switch语句几点说明: 1. case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的. 2.case后面表达式可以接受: 基本数据类型,b ...

最新文章

  1. 精选SpringBoot+Vue开发的开源系统(前端+后端+小程序)
  2. Jconsole远程监控tomcat 的JVM内存(linux、windows)
  3. Linux:程序员必备的21条Linux 命令
  4. 去除桌面图标的小箭头
  5. 修改工程生成的文件类型
  6. MakeItTalk:Adobe 语音驱动的头部动画
  7. php+mysql+json android 连接wamp
  8. 【转载】程序员面对下列技术问题,如何做决策
  9. Android播放器
  10. 计算机的it入门知识,IT基础知识入门课程.ppt
  11. TMDB 5000电影数据集
  12. python题库选择题刷题训练_python题库刷题训练开源到了Github
  13. 计算机一级打字要注意什么,用键盘打字时要注意什么 怎样用键盘来练习打字...
  14. (八十三)第三方类库不支持64位处理器的解决方法
  15. 查找网站的IP地址的两种方法
  16. linux 命令 curl 详解
  17. 电脑水冷风扇转速太高怎么调?
  18. 本地图片转为网络链接(URL/HTML/Markdown/BBCode...)
  19. 五分钟讲透开关电源buck降压基本原理
  20. 了解RAC(ReactiveCocoa)

热门文章

  1. SpringBoot+Vue 完整的外卖系统,手机端和后台管理
  2. SpringBoot 自动装配原理
  3. 查询SQLSERVER执行过的SQL记录(历史查询记录)
  4. 比特币、以太坊、瑞波币、万融链和区块链
  5. webpack----loader
  6. 1313 质因数分解
  7. CKEditor的使用方法
  8. Large Memory Footprints on AIX
  9. 使用Apache Kudu和Impala实现存储分层
  10. Centos6.8 搭建Lvs+Keepalived