建立视图“v_sum”查询,统计各个员工的缺勤及加班天数(显示“sid”、“sumno”和“sumadd”,其中“sumno”字段为缺勤总数,“sumadd”字段为加班总数)。(7分)
时间: 2023-10-11 12:06:49 浏览: 35
好的,以下是建立视图“v_sum”的SQL语句:
```
CREATE VIEW v_sum AS
SELECT s.sid, SUM(CASE WHEN a.type = 'no' THEN a.days ELSE 0 END) AS sumno, SUM(CASE WHEN a.type = 'add' THEN a.days ELSE 0 END) AS sumadd
FROM staff s LEFT JOIN attendance a ON s.sid = a.sid
GROUP BY s.sid;
```
这个视图将员工表和考勤表进行左连接,以员工ID为分组依据,统计出每个员工的缺勤天数和加班天数。其中用到了SUM函数和CASE语句来进行条件判断和累加操作。
相关问题
建立视图“v_sun”查询,统计各个员工的缺勤及加班天数(显示“s id”、“sumno”和“sumadd”,其中“sumno”字段为缺勤总数,“sumadd”字段为加班总数)。(7分)
好的,以下是建立视图“v_sun”的SQL语句:
```
CREATE VIEW v_sun AS
SELECT s.id, SUM(CASE WHEN a.type = 'no' THEN a.days ELSE 0 END) AS sumno, SUM(CASE WHEN a.type = 'add' THEN a.days ELSE 0 END) AS sumadd
FROM staff s LEFT JOIN attendance a ON s.id = a.staff_id
GROUP BY s.id;
```
这个视图将员工表和考勤表进行左连接,以员工ID为分组依据,统计出每个员工的缺勤天数和加班天数。其中用到了SUM函数和CASE语句来进行条件判断和累加操作。
阅读全文