mysql联合查询问题(将学生信息和对应的考勤次数联合返回,最好能用考勤次数排序)

mysql联合查询问题(将学生信息和对应的考勤次数联合返回,最好能用考勤次数排序),第1张

select a.*,b.考勤次数 from 学生信息表 a 

(select  s_id,count(*) as 考勤次数 from 学生考勤表 group by s_id)b 

where a.s_id=b.s_id order by b.考勤次数 desc

1、维护数据

员工表

考勤表

2、查询迟到、早退数据

3、sql

SELECT

T.emp_no,

T.username,

T1.attendace_time,

T1.start_time,

T1.end_time,

CASE

WHEN DATE_FORMAT(T1.start_time, '%H') >= '09' THEN

'迟到'

END AS start_time_flag,

CASE

WHEN DATE_FORMAT(T1.end_time, '%H') <'17' THEN

'早退'

END AS end_time_flag

FROM

`员工表` T

INNER JOIN `考勤表` T1 ON T.emp_no = T1.emp_no

WHERE

DATE_FORMAT(T1.attendace_time, '%Y%m') = '201909' /*月份参数*/

1、首先我们打开Workbench创一个建数据库(这里都使用闪电1执行选定命令行)。

2、先创建Student学生表。

3、再创建course课程表。

4、然后就可以创建sc关联表了我们先写上Student的主键和course的主键,并写上sc自己的属性成绩。

5、再写上主键约束,以及把sc表的学号属性和Studnet的学号关联、课程号属性和course的课程号关联。

6、再次运行就可以看到我们成功创建了学生表和课程表的关联表sc。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7281104.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存