RToracle数据库中已知 :
select
t.a,
t.b
from
table1 t , table2 t2
where
t.c=t2.c and
t.d =
case ¶m='01' then '1' --想在此处多加一条语句。像这样: case ¶m ='01' then t.d='1' and t.e='1' .但这样写 编译不通过。尝试用if 语句 编译也通不过。现在需要这样的逻辑判断,请问各位大侠该如何实现啊
case ¶m ='02' then '2'
end case
and t.f = 0;问题描述完毕。
简单来说就是想做这样的判断,当参数为01的时候,想让t.d='1' 并且 and t.e='1' 。
当参数为02的时候。想让t.d='2'并且 and t.e='2'.
select
t.a,
t.b
from
table1 t , table2 t2
where
t.c=t2.c and
t.d =
case ¶m='01' then '1' --想在此处多加一条语句。像这样: case ¶m ='01' then t.d='1' and t.e='1' .但这样写 编译不通过。尝试用if 语句 编译也通不过。现在需要这样的逻辑判断,请问各位大侠该如何实现啊
case ¶m ='02' then '2'
end case
and t.f = 0;问题描述完毕。
简单来说就是想做这样的判断,当参数为01的时候,想让t.d='1' 并且 and t.e='1' 。
当参数为02的时候。想让t.d='2'并且 and t.e='2'.
解决方案 »
- oracle当前日期的前3个月怎么写?
- Oracle在不改变原结构增加扩展字段
- 中文双引号等字符的插入问题
- 求一个更新的SQL语句 请大师指教!
- system登入orcl顯示the account is locked後續...
- 面试(悲剧了)
- 如何判断在数据库中某个表的存在,如果存在就不创建,否则就创建
- 大家好,我建了一个触发器来删除表中的重复记录,但是报错,请大家指点一下,非常感谢!
- 向Oracle数据库导入数据时,提示 'IMP-00020:用于列缓冲区大小(22)的长整数列过大'如何解决?(在线等)
- sqlldr error 605错误。--在线等待
- 如何判断数组中是否存在重复的值?
- 在pl sql中的存储过程中判断某个目录下的某个文件是否存在
--楼主是不是想要这个样子
select
t.a,
t.b
from
table1 t , table2 t2
where
t.c=t2.c and
t.d = decode(¶m,'01','1','02','2')
and t.e=decode(¶m,'01','1','02','2')
是的。要的就是这个。这样可以解决问题,但相当于写了两遍case when 呢
不过还是谢谢你了