Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645
根据输入变量的值进行判断,如果输入的是偶数,则计算 100 以内偶数之和,如果输入的是奇数,则计算 100 以内奇数之和
分析:
这个范例中包含两个循环程序,前面介绍循环程序的时候已经讲过。在这个范例中,
这两个程序是否执行,取决于输入变量的值是奇数还是偶数,
因此应该使用条件语句进行判断。其中判断是奇数还是偶数利用 MOD() 函数实现
在上面的代码中,第7行判断输入的变量值是否是偶数,如果是偶数,则执行第 8~14 行的代码,
使用 WHILE 循环计算 100 以内偶数之和;如果输入的变量值是奇数,则执行第 16~22 行之间的代码,使用 WHILE 循环计算 100 以内奇数之和
输入 3 个不同的数,按照从大到小的顺序输出
分析:
要实现两个变量互换,必须通过第 3 个变量进行周转才能完成,
例如要a 与b 互换,此时可以引入第 3 个变量t,先将a 的值赋予t,然后再将b 的值赋予a,
最后再将t 的值赋予a,最终实现这两个变量互换数据
从 emp 数据表创建一个新的员工表,该表包含所有工作岗位CLERK、SALESmAN 和 mANAGER 的信息,然后编程实现根据工作不同调整工资,CLERK 工资增加 10%,SALESmAN 工资增加 15%,mANAGER工资增加 20%
分析:
这个练习主要是通过编程实现数据表内容的修改,由于涉及不同的工作岗位,因此可以用条件语句实现,
根据不同的工作岗位得到不同的工资增加比率,最后统一在数据库进行修改。
另外还要从数据表中获取工作岗位的数据类型,可以使用 %TYPE 类型。
步骤 1:创建数据表。由于要获取 3 个部门的员工,所有在 WHERE 子句中使用 IN 操作符
CREATE TABLE emp1 AS SELECT * FROM emp WHERE job IN (‘CLERK’‘,SALESMAN’‘,MANAGER’)
步骤 2:
编写程序。如下图所示,定义变量 var_job,其类型使用 %TYPE 根据 emp 表中 job 字段类型确定,
其值根据输入的工作岗位确定,然后使用 IF...THEN...ELSIF 语句为 var_increment 赋值,最后使用 UPDATE 语句修改相应工作岗位员工的工资
运行程序,输入工作岗位是“CLERK”,程序会根据工作岗位修改他的工资。最后查询该表,发现工作岗位是 CLERK 的工资已经按照要求修改