【发布时间】:2016-06-08 16:41:23
【问题描述】:
早上好/下午好,感谢您检查这个,我正在努力弄清楚我错过了什么。
试图根据结果(单独的任务)建立一个日程安排系统,但由于我们的日程安排每天/每周更改多次,因此会产生太多重复。
Select modified, local_Start_Time, local_End_Time, seg_code, Date, employee
from schedule_table
Where employee= '###' and seg_code = ‘schedule’
and Date in ('20160606', '20160607', '20160608', '20160609')
group by modified
,local_start_time
,local_end_time
,seg_code
,date
,employee
当我运行它时,我得到了 Table 的预期结果。
我尝试在“已修改”选择周围添加 max () 以将其限制为最新条目,但这并没有改变上述任何内容。然后我添加了
max(Local_START_Time)
,max(Local_END_time)
,max(modified)
对于选择,这确实将其限制为每位员工 1 行,但它现在采用与此相反的条目 [表 2][2]
我尝试在开始/结束时间将其从最大值调整为最小值,它修复了一些并破坏了其他一些。
我对 SQL 还很陌生,曾尝试查看其他问题/视频,但无济于事。我理解将“最大值”修改为最近时间条目的逻辑,然后从这两个单元格中获取最大值(最高开始/结束时间),但在完美的世界中,我只希望有一个最大值(修改)和然后将其与开始和结束时间配对。
谁能用我所缺少的东西来指导我朝着正确的方向前进,或者使用 1 个 max 语句,或者完全使用所有 3 个 / 一个不同的语句?
使用 SQL Management Studio,如果我遗漏了任何其他关键细节,我们深表歉意,感谢您的帮助,并期待了解更多信息并帮助他人!
编辑为了澄清我遇到的挑战,Updated Image,绿色单元格都是每个日期的最新更新时间表,而红色单元格是 max(start /结束时间)。
希望有帮助
【问题讨论】: