修改一下 如何计算两张表的数据?一张是员工的【年假信息表】,里面有员工的年假,时间是比如 ID name 年假(小时) 剩余年假(小时) 1 A 200 200 2 B 100 100 另一张表为【请假表】里面有 ID name 请年假时间(小时) 1 A 20 2 B 20 3 B 10 4 A 10 因为是请假表,所以员工可以出现多次 如何把第二张表里面A,B用掉的年假从第一张表里面扣除啊? 结果在第一张表里面显示: ID name 年假(小时) 剩余年假(小时) 1 A 200 170 2 B 100 70
我现在写的可以更改你的name为A的剩余假期,有一点要注意,在update中只能更改一个name,所以最好加一个参数从前台程序传入 代替where name = 'A'这样的地方create table #年假信息表 ( ID int, name nchar(1), 年假 int, 剩余年假 int ) insert into #年假信息表 values(1,'A',200,200) insert into #年假信息表 values(2,'B',100,100)create table #请假表 ( ID int, name nchar(1), 请年假时间 int )insert into #请假表 values(1,'A',20) insert into #请假表 values(2,'B',20) insert into #请假表 values(3,'B',10) insert into #请假表 values(4,'A',10)declare @vocation_A int select @vocation_A = sum(请年假时间) from #请假表 where name = 'A' group by name update #年假信息表 set 剩余年假 = 剩余年假 - @vocation_A where #年假信息表.name = ‘A’ select * from #年假信息表drop table #年假信息表 drop table #请假表-----------------------------Result------------------------- 1 A 200 170 2 B 100 70
select *,年假-(select sum(请年假时间) from 请假表 where 年假信息表.name=请假表.name) as 剩余年假 from 年假信息表这样?
如何计算两张表的数据?一张是员工的【年假信息表】,里面有员工的年假,时间是比如
ID name 年假(小时) 剩余年假(小时)
1 A 200 200
2 B 100 100
另一张表为【请假表】里面有
ID name 请年假时间(小时)
1 A 20
2 B 20
3 B 10
4 A 10
因为是请假表,所以员工可以出现多次
如何把第二张表里面A,B用掉的年假从第一张表里面扣除啊?
结果在第一张表里面显示:
ID name 年假(小时) 剩余年假(小时)
1 A 200 170
2 B 100 70
代替where name = 'A'这样的地方create table #年假信息表
(
ID int,
name nchar(1),
年假 int,
剩余年假 int
)
insert into #年假信息表 values(1,'A',200,200)
insert into #年假信息表 values(2,'B',100,100)create table #请假表
(
ID int,
name nchar(1),
请年假时间 int
)insert into #请假表 values(1,'A',20)
insert into #请假表 values(2,'B',20)
insert into #请假表 values(3,'B',10)
insert into #请假表 values(4,'A',10)declare @vocation_A int
select @vocation_A = sum(请年假时间) from #请假表
where name = 'A'
group by name
update #年假信息表 set 剩余年假 = 剩余年假 - @vocation_A
where #年假信息表.name = ‘A’
select * from #年假信息表drop table #年假信息表
drop table #请假表-----------------------------Result-------------------------
1 A 200 170
2 B 100 70
select *,年假-(select sum(请年假时间) from 请假表 where 年假信息表.name=请假表.name) as 剩余年假
from 年假信息表这样?