当前位置:首页 » 存储配置 » oracle存储过程casewhen

oracle存储过程casewhen

发布时间: 2022-08-24 10:51:13

A. oracle case when的用法是什么

1)导入用户(从用户scott导入到用户scott)。

impdp scott/tiger@orcl directory=mp_dir mpfile=expdp。dmp schemas=scott。

2)导入表(从scott用户中把表dept和emp导入到system用户中)。

impdp system/manager@orcl directory=mp_dir。

mpfile=expdp。dmptables=scott。dept,scott。emp remap_schema=scott:system。



(1)oracle存储过程casewhen扩展阅读

逻辑结构

由至少一个表空间和数据库模式对象组成。这里,模式是对象的集合,而模式对象是直接引用数据库数据的逻辑结构。模式对象包括这样一些结构:表、视图、序列、存储过程、同义词、索引、簇和数据库链等。逻辑存储结构包括表空间、段和范围,用于描述怎样使用数据库的物理空间。

总之,逻辑结构由逻辑存储结构(表空间,段,范围,块)和逻辑数据结构(表、视图、序列、存储过程、同义词、索引、簇和数据库链等)组成,而其中的模式对象(逻辑数据结构)和关系形成了数据库的关系设计。

B. 请教Oracle Case When用法

利用case when进行分支判断:
第一种形式:
CREATE OR REPLACE FUNCTION GET_SALARY1(ENAME IN VARCHAR2) RETURN NUMBER
AS
BEGIN
CASE
WHEN ENAME='ZXQ' THEN
RETURN 1;
WHEN ENAME='TJH' THEN
RETURN 2;
WHEN ENAME='HLW' THEN
RETURN 3;
ELSE
RETURN 0;
END CASE;
END GET_SALARY1;
第二种形式:只适用于表达式的值在有限且确定的范围之内进行匹配。
CREATE OR REPLACE FUNCTION GET_SALARY2(empno IN NUMBER) RETURN NUMBER
AS
BEGIN
CASE EMPNO
WHEN 0 THEN
RETURN 1;
WHEN 1 THEN
RETURN 2;
WHEN 2 THEN
RETURN 3;
ELSE
RETURN 0;
END CASE;
END GET_SALARY2;
第三种形式:
SELECT DEPTNO,(CASE WHEN ENAME='ZXQ' THEN EMPNO ELSE 0 END)
FROM EMP;
注:将表中每条数据都校验一下,若ENAME='ZXQ'则输出empno值否则输出0

C. oracle数据库存储过程,提示缺少关键字

Create Or Replace Procere Addtax As
Dis Float;
Begin
Insert Into Tax
Select t.Teacher_Id,
(t.Bonus + t.Wage) Depoist,
(t.Bonus + t.Wage) * (Case
When (t.Bonus + t.Wage) < 1000 Then
0.00
When (t.Bonus + t.Wage) Between 1000 And 3000 Then
0.03
When (t.Bonus + t.Wage) > 3000 Then
0.05
End Case)
From Teachers t;
End;

D. oracle里的case when是什么用法

1)导入用户(从用户scott导入到用户scott)
impdp scott/tiger@orcl directory=mp_dir mpfile=expdp.dmp schemas=scott;
2)导入表(从scott用户中把表dept和emp导入到system用户中)
impdp system/manager@orcl directory=mp_dir mpfile=expdp.dmptables=scott.dept,scott.emp remap_schema=scott:system;
3)导入表空间
impdp system/manager@orcl directory=mp_dir mpfile=tablespace.dmp tablespaces=example;
4)导入数据库
impdb system/manager@orcl directory=mp_dir mpfile=full.dmp full=y;
5)追加数据
impdp system/manager@orcl directory=mp_dir mpfile=expdp.dmp schemas=systemtable_exists_action

E. oracle 关于 case when 的问题

只有paiming 是数字类型的,这个语句是没有问题的。

你这么写有什么错误了吗?

或者直接:

order by nvl(paiming,99)

F. oracle中自定义函数,使用case ,when时出错

select student,nvl(sum(yuwen),-1) as yuwen,nvl(sum(shuxue),-1) as shuxue,nvl(sum(wuli),-1) as wuli
from ( select student,
case when cource='yuwen' then mark else null end as yuwen,
case when cource='shuxue' then mark else null end as shuxue,
case when cource='wuli' then mark else null end as wuli
from bob_cj )
group by student
order by student

G. oracle sql case when 循环

没办法在简单查询中实现,需要用存储过程或者函数来做这个事情,不建议用太多的case when

H. Oracle存储过程返回记录集

declare
begin
for a in(select s.stuid,s.stuname,s.stusex,c.classnum,c.classname ,r.sturesults tmp from student s
left join result r on s.stuid=r.stuid
left join calss c on r.classnum=c.classnum
)
case when a.tmp>90 then
你要执行的操作;
case when a.tmp>60 and a.tmp<90 then
你要执行的操作;
case when a.tmp<60 then
你要执行的操作;
else
end case;
end;

I. oracle数据库case问题

你估计是问的case语句与case表达式吧
在存储过程中,case语句when后都要加分号而case表达式中不需要
你看这个是表达式的
case有两种表达式:
1. 简单Oracle case表达式,使用表达式确定返回值.
语法:
case search_expression
WHEN expression1 THEN result1
WHEN expression2 THEN result2
....
WHEN expressionN THEN resultN
ELSE default_result
END
2. 搜索case表达式,使用条件确定返回值.
语法:
case
WHEN condition1 THEN result1
WHEN condistion2 THEN result
....
WHEN condistionN THEN resultN
ELSE default_result
END

J. Oracle: Case When 用法

case when是不支持单独使用的。
如果单独的条件判断,就需要PL/SQL语句
IF A=1 THEN
B := 1;
ELSEIF A=2 THEN
B := 2;
ELSE
B := 3;
END IF;

热点内容
循迹小车算法 发布:2024-12-22 22:28:41 浏览:82
scss一次编译一直生成随机数 发布:2024-12-22 22:04:24 浏览:956
嫁接睫毛加密 发布:2024-12-22 21:50:12 浏览:975
linuxbin文件的安装 发布:2024-12-22 21:46:07 浏览:798
vlcforandroid下载 发布:2024-12-22 21:45:26 浏览:664
电脑做网关把数据发送至服务器 发布:2024-12-22 21:44:50 浏览:431
新华三代理什么牌子的服务器 发布:2024-12-22 21:33:21 浏览:342
欢太会员密码是什么 发布:2024-12-22 20:57:28 浏览:74
sqllocaldb 发布:2024-12-22 20:07:08 浏览:126
如何找到我的服务器 发布:2024-12-22 19:52:14 浏览:301