如何计算应缴个人所得税? 使用SQL,理解SQL

先批一下小日本
最近看见有博友在谈论日方外包项目 , 刚好提到了SQL的编写 。
后面给不少朋友拍了
那个语句的想法是从三个表,进行连接查询 。
劳动时间管理情报表提供主要查询结果
原X部门表提供部门名称(鸟文不会打)
最后一个表提供状态名称
主要最大一个case段落是提供核心查询数据的 , 并且根据列不同的状态来区分整个审核流程的标致
最后输出的应该是所有项目的名称、状态名称以及详细审批信息
问题是到底写得好不好呢?
虽然小日本的不是很合理,不过也没特别不应该的问题 , 我相信多数人是不会写的 。

如何计算应缴个人所得税? 使用SQL,理解SQL

文章插图
简单说 , 就是有两个表 , 一个表示审批的具体数据,但是里面没有审批状态字段,同过不同阶对应的字段是否有值来区分 。另一个表有1、2、3、4的编号和状态的实际文字表达 。
需要查询所有审批项目的情况 。如果只用一个SQL你能怎么做?
====================================================
回到我的标题上
出个题目大家做做,在我的感觉里 , 能完成的可以算对SQL有正确的认识了
表一:员工表
员工编号(PK),姓名 , 应发工资,应缴税金,实发工资
表二:所得税税率表
税率编号(PK) , 下限,上限,税率
每月末,员工表里的应发工资会经过程序计算完毕,不过应缴税仅和实发工资为0
税率表可能如下
如何计算应缴个人所得税? 使用SQL,理解SQL

文章插图
税率编号(PK),下限 , 上限,税率%
1,0,1000 , 0
2 , 1000,1500 , 5
3 , 1500,3000,10
4,3000,5000,15
………
实际解决这个问题的时候,我还为税率表增加了一个计算列,不过不加也可以
最后的项目需求是,我们要在员工表里填写实际每个人的应缴税金和实发工资 。
操作员在界面点个按钮,然后执行代码 , 数据库数据发生变化
要求:简洁,不许使用任何循环,不论是程序里的还是SQL里的
ps:这是我给培训生做的题目
【如何计算应缴个人所得税? 使用SQL,理解SQL】ps2:能理解SQL的人一定不会看见linq就烦,因为这两个人的很多概念本质就是一样的 。