当前位置: 代码迷 >> Sql Server >> 两张表数据演算
  详细解决方案

两张表数据演算

热度:69   发布时间:2016-04-24 09:41:46.0
两张表数据运算
餐费表
姓名 早餐 中餐 晚餐
张三  3      7     9
李四  5    9     10
王五 6    8   15

加班表
姓名   次数
李四    5
张三    3

如果加班表中存在加班,餐费表中的晚餐就减去相应的加班次数即得出下表:
姓名 早餐 中餐 晚餐
张三  3      7     6
李四  5    9     5

------解决思路----------------------

select 餐费表.姓名,
        早餐,
        中餐,
        晚餐-次数 as晚餐
 from 餐费表,
     加班表 
 where 餐费表.id=加班表.id

------解决思路----------------------

select a.姓名,b.早餐,b.中餐,b.晚餐-a.次数  from 加班表 as a left join 餐费表 as b on a.姓名=b.姓名 where b.姓名 is not null

------解决思路----------------------

select a.[姓名],[早餐],[中餐],[晚餐]-[次数] [晚餐] from [加班表] a
inner join [餐费表] b
on a.[姓名] = b.[姓名]
  相关解决方案