SELECT A.A0101 AS 姓名, A.A0190 AS 人员编号,A.A0177 AS 身份证号,A.A0191 AS 在职或离职,A.A1017 AS 离职时间,C.GZ_YM AS 缴费年月, --,缴费状态, A.BXJS AS 缴费基数, C.C21163 AS 养老保险单位缴纳,C.C2144 AS 养老保险个人缴纳, SUM(C.C21163+C.C2144) AS 养老合计, C.C21165 AS 失业保险单位缴纳, C.C2153 AS 失业保险个人缴纳, SUM(C.C21165+ C.C2153) AS 失业合计, C. C21164 AS 医疗保险单位缴纳,C.C2147 AS 医疗保险个人缴纳, SUM( C.C21164+C.C2147) AS 医疗合计, C.C21166 AS 工伤保险单位缴纳 SUM(C.C21163+C.C21165+ C. C21164+ C.C21166) AS 单位缴纳总合计, SUM(C.C2144+C.C2153+C.C2147) AS 个人缴纳总合计, SUM总合计; from C21 C LEFT JOIN view_a01 A ON C.A0188=A.A0188
时间: 2024-04-18 10:25:02 浏览: 84
这段代码是一个 SQL 查询语句,用于从表 `C21` 和视图 `view_a01` 中检索数据,并进行一些列的计算。以下是查询的解释:
- 选择了以下列作为结果:`A.A0101` 作为姓名、`A.A0190` 作为人员编号、`A.A0177` 作为身份证号、`A.A0191` 作为在职或离职、`A.A1017` 作为离职时间、`C.GZ_YM` 作为缴费年月。
- 对于缴费状态这一列,代码中被注释掉了,可能是因为在这里没有具体的计算或筛选条件。
- 对于养老保险、失业保险和医疗保险,分别计算了单位缴纳和个人缴纳的金额,并将其求和得到合计值。
- 对于工伤保险单位缴纳,直接选择了该列的值。
- 计算了单位缴纳总合计,将养老保险、失业保险、医疗保险和工伤保险的单位缴纳金额求和。
- 计算了个人缴纳总合计,将养老保险、失业保险和医疗保险的个人缴纳金额求和。
- 没有提供 SUM 总合计列的计算方式,可能是因为代码中缺少相关的计算逻辑。
最后,通过使用 LEFT JOIN 将表 `C21` 和视图 `view_a01` 进行连接,以获取相关数据。
请注意,该查询可能需要根据实际情况进行进一步的调整和完善,例如添加 WHERE 子句来筛选特定条件的数据。
阅读全文