sql – 每个工作者的MAX日期
发布时间:2020-12-24 20:37:32 所属栏目:MsSql教程 来源:网络整理
导读:考虑两个表. Worker表包含W_ID,W_Name等字段.课程表包含C_ID,C_Name,C_Date等字段. 工人可以参加许多课程,许多工人可以参加一门课程.因此,两个表之间存在多对多的关系.打破多对多,并创建一个名为Takes的新表,其中包含外键W_ID和C_ID. 这是一个问题:我想找
考虑两个表. Worker表包含W_ID,W_Name等字段.课程表包含C_ID,C_Name,C_Date等字段. 工人可以参加许多课程,许多工人可以参加一门课程.因此,两个表之间存在多对多的关系.打破多对多,并创建一个名为Takes的新表,其中包含外键W_ID和C_ID. 这是一个问题:我想找出所有工人的名单和他们最后的课程.例如,如果W_ID = 1,则采用C_Date 20/01/2010和C_Date 25/10/2010以及C_Date 20/12/2010. 然后需要的结果是: W_ID C_Date 1 20/12/2010 2 3 4 编辑 我想找到每个工人完成课程的最长日期,因为工人会做很多课程.我是商学院学生,所以我不能使用INNER JOIN命令. IN可以代替吗? 我在Microsoft Access中使用我的SQL 解决方法SELECT w.w_id,MAX(c.c_date) FROM worker w LEFT JOIN worker_course wc ON wc.w_id = w.w_id LEFT JOIN course с ON c.c_id = wc.c_id GROUP BY w.w_id 或这个: SELECT w.w_id,MAX(c.c_date) FROM course с JOIN worker_course wc ON wc.c_id = c.c_id RIGHT JOIN worker w ON w.w_id = wc.w_id GROUP BY w.w_id (编辑:江门站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sql-server-2008 – 如何使用损坏的模型db启动MSSQL Server
- sql-server-2008 – 传递给SQL Server的查询已损坏
- 数据库设计 – 为具有多个多对多关系的视频游戏业务域设计数
- linq-to-sql – LinqToSql和全文搜索 – 可以做到吗?
- sql-server – uncoditioned Count(*)vs System表
- 使用相对宽度调整表格问题
- sql-server – 包含要使用文件流的二进制文件的现有表
- 免费下载,无忧使用:瑞星杀毒软件2003下载版指南
- 什么是液晶屏幕|液晶屏幕名词
- sql-server-2005 – 在SQL Server 2005中向存储过程添加参数