【问题标题】:Get intime and outtime from the table of a day and particular emloyeeID从一天的表和特定的员工 ID 中获取 intime 和 outtime
【发布时间】:2010-11-11 10:44:43
【问题描述】:

我有三列employeeID、intime 和outtime。我只想获取一天中的第一个intime 和最后一个outtime。

表结构:

EmployeeID Intime OutTime 1 2008-01-13 08:10:04.000 2008-01-13 09:03:42.000 2 2008-01-13 09:10:04.000 2008-01-13 10:03:20.000 3 2008-01-13 08:10:05.000 2008-01-13 09:03:45.000 1 2008-01-13 10: 10:04.000 2008-01-13 11:03:42.000 1 2008-01-13 12:10:04.000 2008-01-13 13:03:30.000

我想要第一个时间和最后一个时间

喜欢 输出:

EmployeeID Intime OutTime 1 2008-01-13 08:10:04.000 2008-01-13 13:03:30.000

对此的 sql 查询是什么。 请以书面形式提出查询。

谢谢

饭菜

【问题讨论】:

    标签: sql-server


    【解决方案1】:

    一种方法是(假设 OutTime 总是与 InTime 在同一天):

    SELECT employeeID, CONVERT(VARCHAR(10), Intime, 112) AS TheDate, MIN(Intime) AS InTime, MAX(OutTime) AS OutTime
    FROM YourTable t
    GROUP BY employee, CONVERT(VARCHAR(10), Intime, 112)
    

    【讨论】:

      【解决方案2】:

      此查询应该为您提供当前日期的第一个 intime,最后一个 outtime(您可以在 where 子句中使用任何日期而不是 getdate() 来获取任何其他日期的详细信息)。

      Select employeeid, Min(Intime) as Intime, Max(Outtime) as OUttime 
      from Yourtable
      where CONVERT(VARCHAR(10),Intime,111) = CONVERT(VARCHAR(10),GETDATE(),111)  
      group by employeeid
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-01-09
        • 2017-05-29
        • 1970-01-01
        • 2021-06-15
        • 2020-04-21
        • 2022-12-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多