oracle创建函数,根据员工工号得出入职缺勤天数
时间: 2024-05-06 22:16:54 浏览: 12
可以使用以下代码来创建一个函数,根据员工工号得出入职缺勤天数:
```
CREATE OR REPLACE FUNCTION absent_days(emp_id IN NUMBER)
RETURN NUMBER
IS
hire_date DATE;
absent_days NUMBER;
BEGIN
-- 获取员工入职日期
SELECT hire_date INTO hire_date FROM employees WHERE employee_id = emp_id;
-- 计算缺勤天数
SELECT SUM(ROUND((end_date - start_date) + 1))
INTO absent_days
FROM hr.absences
WHERE absence_type_id IN (1, 2)
AND employee_id = emp_id
AND start_date >= hire_date;
RETURN absent_days;
END;
```
该函数首先获取给定员工的入职日期,然后从 hr.absences 表中获取该员工在入职日期之后的所有缺勤记录,并计算总天数。最后,返回缺勤天数。
要使用该函数,只需使用以下语句调用:
```
SELECT absent_days(101) FROM DUAL;
```
其中 101 是员工的工号。
相关问题
使用Seaborn库按性别绘制StudentAbsenceDays缺勤天数和成绩Class相关性
首先,需要加载Seaborn库和数据集。这里我们使用的是一个名为"StudentsPerformance.csv"的数据集,其中包含了学生的一些基本信息和成绩情况。
```python
import seaborn as sns
import pandas as pd
# 加载数据集
df = pd.read_csv("StudentsPerformance.csv")
```
接下来,我们可以使用Seaborn的`catplot`函数按照性别绘制缺勤天数和成绩的相关性。
```python
sns.catplot(x="gender", y="Class", hue="StudentAbsenceDays", data=df)
```
这个函数会生成一个分类图,其中每个类别的数据都被分成了不同的子图。在这个例子中,我们按照性别分成了两个子图,每个子图显示了不同缺勤天数的成绩分布情况。
如果想要更改图形的样式,可以使用Seaborn的其他函数,例如`set_style`和`set_palette`等。例如,我们可以更改图形的背景颜色和调色板:
```python
# 设置背景样式
sns.set_style("whitegrid")
# 设置调色板
sns.set_palette("husl")
# 绘制分类图
sns.catplot(x="gender", y="Class", hue="StudentAbsenceDays", data=df)
```
这样就可以得到一个更漂亮的图形了。
创建一个向员工基本情况表jbqk中添加员工缺勤记录的存储过程jbqkadd,创建成功
创建一个向员工基本情况表(jbqk)中添加员工缺勤记录的存储过程(jbqkadd)的步骤如下:
1. 首先,创建一个新的存储过程,命名为jbqkadd。
2. 在存储过程的开始部分,使用INSERT语句将员工缺勤记录插入到jbqk表中。语法如下:
INSERT INTO jbqk (员工编号, 缺勤日期, 缺勤原因)
VALUES (员工编号的值, 缺勤日期的值, 缺勤原因的值);
这里,员工编号、缺勤日期和缺勤原因分别是jbqk表中的列名,值则是需要添加的具体信息。你可以根据实际情况更改这些列名和具体信息。
3. 在存储过程的结尾部分,使用COMMIT语句保存对jbqk表的修改。语法如下:
COMMIT;
4. 最后,结束存储过程的编写。
注意事项:
- 在编写存储过程时,需要确保员工编号的值在jbqk表的员工编号列中已存在。
- 如果有多个员工缺勤记录需要添加,可以在存储过程中使用循环或者多个INSERT语句来实现。
- 使用该存储过程时,需要提供员工编号、缺勤日期和缺勤原因的具体值。
创建成功后,你可以通过调用这个存储过程,向jbqk表中添加员工缺勤记录。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)