当前位置:首页 » 编程语言 » 给员工升职的sql语句
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

给员工升职的sql语句

发布时间: 2022-08-07 17:47:03

‘壹’ sql语句 求高手解答

declare @a varchar(10),@c char(1)
declare b cursor
set @a=''
for select 编号 from 员工表 where 职称='销售员'
open b
fetch from b into @c
while @@fetch_status=0
begin
set @a=@a+@c+','
fetch from b into @c
end
print @a
close b
deallocate b

改了那么多次终于对了,,

‘贰’ 经过一段时间的工作,王向荣(员工编号为020010)收入增加1000元的SQL语句怎么写

这个用存储最好。当然用sql语句也行,就是select 工资+1000 from 表名 where 员工编号=020010.

‘叁’ PL/SQL语句如何给不同身份的人涨工资

where e.empno=empno; ,由于不知道给那个职位的涨工资,所以是要判断的,根据job,这个job从哪里来,当然从emp表中来select empno,ename ,sal from emp;做这个的时候应该先把可能有可能出现的Sql都写出来,这样子是一种方法,是IBM的DBA培训讲师告知的。这个cemp就是保存多个变量的值的,相当于一个集合,好吧cursor cemp is select empno, empjob from emp;--定义变量,这是其中方式之一pempno emp.empno%type;pjob emp.empjob%type;begin--开始--1: 打开游标open cemp;--循环游标中的值,给变量赋值LOOP--取出第一个员工fetch cemp into pempno, pjob;--退出,当是这个条件的时候推出exit when cemp%notfound;--开始判断职位 ,/*那个 语法介绍一下, 游标的使用语法 ,1: 定义游标 ,cursor 游标名字 is 后面是要向游标中添加那些值2: 打开游标,3: 取出游标里面的值,用 fetch ,一般都是写在循环里面,把游标的值赋给定义的变量,4: 关闭游标*//*判断语法 if then, elsif then, else end if;*//*循环的方法有三种, loop , end loop; 这是使用最常见的一种*/if pjob='PRESIDENT' then update emp set sal=sal+1000 where empno= pempno;elsif pjob='MANAGER' then update emp set sal=sal+800 where empno=pempno;else update emp set sal=sal+200 where empno=pempno;end if;END LOOP ;close cemp;--提交所修改的东西commit;dbms_output.put_line('涨工资完成');end;

‘肆’ sql语句:现在公司打算将年龄>=40岁并且薪水<2000元的员工中,将每个人加薪200

如果一张表
update Salary set Salary= Salary+200 where age>=40 and Salary<2000;

如果二张表
update User join Salary set Salary+=200 where User.age>=40 and Salary<2000 on User.id = Salary.uid;

‘伍’ 在“工资表”中给员工“司马光”工资增加200元的SQL语句是什么

update`工资表`set`工资_column`=`工资_column`+200where`name`='司马光';

‘陆’ 创建员工表EMP和工资表SAL,通过关联修改实现将“男”员工工资提高10%,写出相应SQL语句。

CREATETABLEEMP
(
EmployeeNameNVARCHAR(32),
SexNVARCHAR(1)
)


CREATETABLESAL
(
EmployeeNameNVARCHAR(32),
SalaryINT
)
INSERTINTOEMP
SELECT'张三',
'男';

INSERTINTOEMP
SELECT'李四',
'女'

INSERTINTOSAL
SELECT'张三',
100

INSERTINTOSAL
SELECT'李四',
100

SELECT*
FROMsal

UPDATEsal
SETSalary=Salary*1.1
FROMEMPb
WHEREdbo.SAL.EmployeeName=b.EmployeeName
ANDb.Sex='男'

SELECT*
FROMsal

‘柒’ 用SQL语句解释将公司中薪水低于平均薪水的员工的薪水提升20%,奖金提升20%,没有奖金则发100元。

SELECT 员工, CASE WHEN 薪水 > ( SELECT AVG(薪水)
FROM ( SELECT ISNULL(薪水, 0) 薪水 ,
员工
FROM TBZ_Customer
) 表
) THEN 薪水 * 1.2
WHEN ISNULL(薪水,0)=0
THEN 100
WHEN 薪水<0
THEN 薪水

END 薪水
FROM ( SELECT ISNULL(薪水, 0) 薪水 ,
员工
FROM 表
) A
奖金一样原理

‘捌’ sql写一个单表触发器,employee表中员工职位的升迁,底薪也随之提升

createtriggertrigger1on学生信息表forupdateasifupdate(学号)update成绩表set学号=a.asnofrom(selectinserted.学号asasno,deleted.学号asbsnofrominserted,deleted)asainnerjoin成绩表asbona.bsno=b.学号

‘玖’ 写sql语句,按人员等级分,等级高的人员放在前面,我表里的等级字段是字符串, ,我这个等级是

select * from 表
where substring(列,1,1)='1' --查询条件,列第一个字符是1,索引是从1开始的。
order by cast(substring(列,3,1) as int) desc --排序,把列的第3个字符转换为int型再排序

‘拾’ 将员工id为3的员工工资增加100的sql语句

使用update更新记录:

update工资表set工资=工资+100whereid=3