对数据库的各项应用与操作都离不开SQL来对数据进行增删改查。

例如 : 有一张某公司职员信息表如下

ChatGPT4 教你如何完成SQL的实践应用-LMLPHP

需求1:在公司职员信息表中,请统计各部门,各岗位下的员工人数。

如果这个SQL语句不会写或者不知道怎么操作可以交给ChatGPT4来完成。

Prompt: 有一个某公司职员表,empno为员工编号,dept为部门,JOB为员工岗位,请写出一个SQL语句来统计每个部门,每个岗位下有多少名员工?

ChatGPT4 教你如何完成SQL的实践应用-LMLPHP

SQL 语句ChatGPT4直接写好,我们可以拿过来进行验证。

ChatGPT4 教你如何完成SQL的实践应用-LMLPHP

直接就统计好了各部门各岗位下的员工人数。

需求2:请统计各岗位下的平均工资,每个员工的工资与平均工资的差距是多少?

Prompt: 有一个某公司职员表,表名为Bank_emp,empno为员工编号,ename为员工姓名,JOB为员工岗位,sal为工资,请写出一个SQL语句来统计每个岗位下的平均工资,员工工资与平均工资的差距是多少?

ChatGPT4 教你如何完成SQL的实践应用-LMLPHP

感谢你提供更具体的表格信息。针对你的新要求,我将给出相应的SQL查询语句。这个查询语句将计算每个岗位下的平均工资以及每位员工的工资与其岗位的平均工资的差距。

sql复制代码

SELECT t1.ename, t1.job, t1.sal, t2.avg_sal, (t1.sal - t2.avg_sal) AS diff FROM (SELECT empno, ename, job, sal FROM Bank_emp) AS t1 JOIN (SELECT job, AVG(sal) as avg_sal FROM Bank_emp GROUP BY job) AS t2 ON t1.job = t2.job;

在这个查询中,我首先创建了一个子查询 t1,这个子查询从员工表 Bank_emp 中选择了员工编号 empno,员工姓名 ename,岗位 job,以及工资 sal。然后,我创建了另一个子查询 t2,该子查询从员工表 Bank_emp 中选择了岗位 job,以及对应的平均工资 avg_sal。我然后将这两个子查询通过岗位 job 进行了连接,这样我就可以得到所有员工的姓名,他们的工资,他们所在岗位的平均工资,以及他们的工资与岗位平均工资的差距 diff

请在实际使用中根据你的数据库的实际结构和需求进行适当的修改。

我们将SQL复制到数据库中进行验证:

ChatGPT4 教你如何完成SQL的实践应用-LMLPHP

这样就得到了中工工资与该员工所在岗位平均工资的差额。

在SQL中用到了子查询,连接查询,分组,统计函数等知识点。

更多精彩内容

AIGC ChatGPT 职场案例
AI 绘画 与 短视频制作
PowerBI 商业智能 68集
数据库Mysql 8.0  54集
数据库Oracle 21C 142集
Office 2021实战应用
Python 数据分析实战,
ETL Informatica 数据仓库案例实战
Excel 2021实操 100集,
Excel 2021函数大全 80集
Excel 2021高级图表应用89集,
Excel 2021大屏可视化制作 56集
Excel 2021实用技巧300集
PPT 2021 商业汇报实战应用69集
数据分析可视化Tableau 80集
数据可视化FineReport 50集
送你各类文档模板PPT,表格,大屏可视化 超过5000+模板
案例实战 http://t.csdn.cn/zBytu

02-08 17:31