首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >更新employees表

更新employees表
EN

Stack Overflow用户
提问于 2013-02-06 06:21:45
回答 2查看 3.1K关注 0票数 2

伙计们,我有以下问题:

对于薪水低于经理工资50%的员工,加薪15%。使用游标、循环和update编写PL/SQL过程。

过程标头创建或替换过程inc_salary为:

。如果加薪后的工资超过经理工资的50%,则例外。

实际上,我们可以直接这样做:

代码语言:javascript
运行
AI代码解释
复制
update emp e
set e.salary+=e.salary*0.15
where e.salary<(select e.mgr from emp e, group by e.mgr)

这是这张表格的图片:

但是我不知道怎么使用这个程序。如果我像这样声明它,创建或替换过程inc_salary,那么它的参数应该是什么?当然,我们可以使用循环,比如

代码语言:javascript
运行
AI代码解释
复制
declare
for r in (select * from emp e) loop
update  emp e
set r.salary+=r.salary*0.15;
where r.salary<r.mgr
exception
if r.salary >r.mgr*1.15  then
dbms.output_putline(' it can't increase');
end loop;
end;

但是如何将它们结合在一起呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-06 06:31:58

为什么需要PL/SQL过程?一个简单的查询就可以完成这项工作!

代码语言:javascript
运行
AI代码解释
复制
UPDATE emp
SET salary = salary * 1.15
WHERE empno IN (
    SELECT e.empno
      FROM emp e
      JOIN emp m ON e.mgr = m.empno
     WHERE e.salary < m.salary * 0.5
)

就这样!

但是,如果你需要使用一个过程,你必须自己决定你到底想要用它做什么。

每个过程都有一组形式参数,这些参数甚至可以是空集。是你决定将什么传递给过程。对于这些情况,请咨询您的经理或架构师。

票数 1
EN

Stack Overflow用户

发布于 2017-03-11 23:34:39

代码语言:javascript
运行
AI代码解释
复制
declare
prec number;
 procedure inc_salary(prcin number) 
is
cursor cl is * from employees;
msal number(8,2);
mid number(6);
begin
for r in cl loop
  mid := nvl(r.manager_id, r.employee_id);
  select salary into msal from employees where employee_id = mid;
  if r.salary < (msal * 0.5) then
     update employees set
     salary = salary * prc
     where employee_id = r.employee_id;
     end if;
   end loop;
end inc_salary;
 begin 
 prec := 1.5;
inc_salary(prec);
end ;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14722839

复制
相关文章
习题 9: 打印,打印,打印
Here are the days: Mon Tue Wed Thu Fri Sat Sun Here are the months: Jan Feb Mar Apr May Jun Jul Aug
hankleo
2020/09/16
1.5K0
习题9:打印打印打印
Here are the days: Mon Tue Wed Thu Fri Sat Sun Here are the months: Jan Feb Mar Apr May Jun Jul Aug There's something going on here. With the three double-quotes.
py3study
2018/08/02
1.5K0
这16条规范代码,同事,拍桌子 大喊 “666”
背景:如何更规范化编写Java 代码的重要性想必毋需多言,其中最重要的几点当属提高代码性能、使代码远离Bug、令代码更优雅。2021金三银四Java面试宝典
程序员白楠楠
2021/02/01
4330
【白话IC】揭秘20000个VCS任务背后的“搬桌子”系列故事
新思科技(Synopsys)家的VCS,在半导体行业使用率极高,背景我们就不多说了。
白山头
2021/04/19
7260
【白话IC】揭秘20000个VCS任务背后的“搬桌子”系列故事
习题 8: 打印,打印
1 2 3 4 'one' 'two' 'three' 'four' True False False True '%r %r %r %r' '%r %r %r %r' '%r %r %r %r' '%r %r %r %r' 'I had this thing.' 'That you could type up right.' "But it didn't sing." 'So I said goodnight.'
hankleo
2020/09/16
9870
习题8:打印,打印
1 2 3 4 one two three four True False False True {} {} {} {} {} {} {} {} {} {} {} {} {} {} {} {} I had this thing. That you could type up right. But it didn't sing. So I said goodnight.
py3study
2018/08/02
7920
web调用打印机自动打印_网页打印如何设置默认打印机
1. 前言 客户对于一些插件比较敏感,如金融、银行等出于安全的考虑和产品的把控,可能不愿意页面打印的时候,客户端浏览器安装插件。(当然,用户有各种各样的需求和打印格式要求,愿意使用打印控件的,开发的打印功能当然很好。) 所以直接使用浏览器自带的打印功能,就成为一个选择。
全栈程序员站长
2022/11/18
6.5K0
感谢增强现实,你可以在你的桌子上观看足球比赛
现在正在进行世界杯比赛,这意味着即使是关于机器学习的文章也必须站在足球的角度。今天说的是一个精彩的系统,它将比赛的2D视频重新制作成3D,这样你就可以在你的咖啡桌上看着它们(假设你有某种增强现实的设置,你几乎肯定不会)。虽然效果不如去俄罗斯看现场比赛,但可能比在电视上要好看多了。 “桌面足球”系统将比赛录像作为输入,并仔细观看,分别跟踪每个球员和他们的动作。然后将球员的图像映射到“从足球视频游戏中提取出来的”3D模型上,并将其置于球场的3D表示上。基本上,他们通过FIFA 18与现实生活进行一种微型混合。
程序你好
2018/07/20
3430
用递归打印反向打印链表
之前我们说明过递归的写法 1.列出两数关系公式 2.找出退出条件 要遍历必然有x=x->link; 退出条件是当link=NULL ,相信对你聪明的你来说这很容易理解。 递归代码
用户7272142
2023/10/11
1800
用递归打印反向打印链表
html如何打印_html打印代码
通常在浏览网页的时候,网页上总是出现一些和内容无关的内容,在打印的时候,要是把整个网页都打印下来,总会有些不方便。。。所以在有需要打印的网页上稍微设置一下打印页是很有必要的。。。
全栈程序员站长
2022/09/22
12.6K0
【愚公系列】2021年11月 攻防世界-简单题-MISC-008(掀桌子)
得到flag:flag{hjzcydjzbjdcjkzkcugisdchjyjsbdfr}
愚公搬代码
2021/12/03
3820
【愚公系列】2021年11月 攻防世界-简单题-MISC-008(掀桌子)
打印部分表格(Lodop打印) 原
(adsbygoogle = window.adsbygoogle || []).push({});
tianyawhl
2019/04/04
1.8K0
java链表打印_java链表打印
public static void main(String[] args) {
全栈程序员站长
2022/08/20
1.9K0
打印标签时如何解决打印偏移
我们在打印标签时,使用的纸张一般都是不干胶卷纸,这样的卷纸又有单排、双排、三排和四排的规格。这些不同规格的标签纸在条码打印中经常会出现打印偏移的问题,甚至会跳纸,遇到这样的情况该如何调整呢?小编下面详细介绍。
神奇像素科技
2021/11/24
2.3K0
打印标签时如何解决打印偏移
三、python调用打印机,打印文字
参考文章: Tim Golden Python Stuff http://timgolden.me.uk/python/win32_how_do_i/print.html
py3study
2020/01/08
3.9K0
java打印菱形代码_打印空心菱形
语法格式 for(①初始化部分;②循环条件部分;④迭代部分){ ③循环体部分; }
全栈程序员站长
2022/11/10
2.6K0
java打印菱形代码_打印空心菱形
打印菱形Java_for循环打印菱形
1、星号前面的空白要用空格代替。 2、把图形分为上下两部分,分别找出行数与“空格”和“*”的关系
全栈程序员站长
2022/11/11
3K0
打印菱形Java_for循环打印菱形
打印流
原有System.out.println 现改为PrintStream类型的实例.println以完成输出到文件
shimeath
2020/07/30
5630
打印技巧
说道底以上这些问题都是兼容问题,我们可以另存为pdf格式,这样有几点好处: 1.几乎所有电脑都可以打开pdf,打印店更是没问题。word还好,如果是少见的像CAD的,其它电脑如果没安装就打不开。 2.不存在兼容问题,你保存时什么样,到其它电脑打开就是什么样子的。如果是word,在其它电脑打开,经常会变了样子,就是因为字体可能没有,或者docx与doc问题,还有wps与office兼容问题等等。 3.保存时另存为pdf格式就好了
P轴
2022/11/18
3970
[python]打印对齐
#  %d、%f是占位符 >>> a = 3.1415926 >>> print("%d"%a)    #%d只能输出整数,int类 3 >>> print("%f"%a)  #%f输出浮点数 3.141593 >>> print("%.2f"%a) #按照要求输出小数位数 3.14 >>> print("%.9f"%a)  #如果要求的小数位数过多,后面就用0补全 3.141592600
py3study
2020/01/09
1.9K0

相似问题

处理脏桌子

10

医生和病人的桌子

10

生成打印和打印预览报告

10

展示一张开票和闭幕式票的桌子

10

闹钟打印

40
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文