如何过滤该数据库

时间:2019-02-28 03:42:15

标签: sql-server

这是我当前拥有的数据。

enter image description here

但是我想将其过滤为最底层的一个。

enter image description here

2 个答案:

答案 0 :(得分:0)

您可以使用

select * from table_name order by Column_name

否则

select Convert(Date,ColumnName) from table_name order by Column_name`

SQL Server提供了许多可用于格式化日期/时间字符串的选项。首先要考虑的因素之一是所需的实际日期/时间。最常见的是使用getdate()的当前日期/时间。这将根据提供日期和时间的服务器来提供当前日期和时间。如果需要通用日期/时间,则应使用getutcdate()。要更改日期格式,请将请求的日期转换为字符串,然后指定与所需格式相对应的格式编号。

  1. 将日期格式选项与CONVERT函数一起使用
  2. 要获取YYYY-MM-DD以使用SELECT CONVERT(varchar,getdate(),23)
  3. 要获取MM / DD / YYYY,请使用SELECT CONVERT(varchar,getdate(),1)
  4. 查看图表以获取所有格式选项的列表

https://www.mssqltips.com/sqlservertip/1145/date-and-time-conversions-using-sql-server/

答案 1 :(得分:0)

请尝试以下操作:

SELECT d.ID,d.[Date],MIN(d.[Time]) AS [Time-in],MAX(d.[Time]) AS [Time-out]
    ,CASE WHEN MAX(d.[Time]) > '17:00:00' THEN CONVERT(TIME,CONVERT(DATETIME,MAX(d.[Time])) - CONVERT(DATETIME,'17:00:00')) ELSE NULL END AS [OT]
FROM (
    SELECT t.ID
        ,CONVERT(DATE,t.[Date]) AS [Date]
        ,CONVERT(TIME,t.[Date]) AS [Time]
    FROM [YourTableName] t
) d
GROUP BY d.ID,d.[Date]
;