oracle 9ioracle里有没有这样的处理方式select * from (条件表达式;0,A表;1,B表)达到这样的效果:若条件=0则:select * from A表;
若条件=1则:select * from B表;
若条件=1则:select * from B表;
解决方案 »
- Error while registering Oracle JDBC Diagnosability MBean.
- 请问如何消除这个笛卡尔积?
- 急!备份控制文件脚本问题
- oracle xmltype的update问题,急问!
- 不用plsql的for loop等循环控制,只用简单的oracle的sql写
- 层次查询SQL语句
- 问个函数
- 请问各位dx:提示“maximum of 20 enabled roles exceeded“,该如何解决?谢谢。(无内容)
- 有关执行JOBS时间,不明白,请指点
- 从oracle中读取的数据是中文,相反在sql语句中写定的中文确成了乱码
- oracle存储过程取出多个游标的数据后插入到表中
- 请教以下数据库现象是否也属于“脏读”?
declare sqlstr varchar1(200);
若条件=0则:sqlstr:='select * from A表;';
若条件=1则:sqlstr:='select * from B表;';
execute immediate sqlstr ;
--没有
--1、用动态sql
--2
if 条件1 then
select * from A;
else
select * from B;
end if;
想用一句话 这样的格式 select * from (条件表达式;0,A表;1,B表)
来实现,不想写一段逻辑判断
在from 的后面有没有这样的函数可以用
--想用的话,只能在我写的哪两种方式中选择一种
WITH table1 AS
(
SELECT 'T1-A' AS st FROM dual
union all
SELECT 'T1-B' AS st FROM dual
),
table2 AS
(
SELECT 'T2-A' AS st FROM dual
union all
SELECT 'T2-B' AS st FROM dual
)
SELECT * FROM (
SELECT '0' AS FLG,T1.* FROM TABLE1 T1
UNION ALL
SELECT '1' AS FLG,T2.* FROM TABLE2 T2) WHERE FLG = '1'/*<-条件式*/