SQL-选择已在表w/时间戳

SQL-选择已在表w/时间戳,sql,Sql,我有一个带有用户ID、时间戳和销售信息的表。每次购买时,相同的用户ID都会多次出现在数据中。我只想选择在表中显示了至少一年的用户ID,因此,为了简单起见,我将使用小于12-31-2016的时间戳。如何使用SQL编写此命令?尝试以下操作: Select Distinct userID FROM Table WHERE DATEDIFF(yy,cast(Timestamp as date),getdate())>=1 根据您的评论更新: Select Distinct userID FROM

我有一个带有用户ID、时间戳和销售信息的表。每次购买时,相同的用户ID都会多次出现在数据中。我只想选择在表中显示了至少一年的用户ID,因此,为了简单起见,我将使用小于12-31-2016的时间戳。如何使用SQL编写此命令?

尝试以下操作:

Select Distinct userID
FROM Table
WHERE DATEDIFF(yy,cast(Timestamp as date),getdate())>=1
根据您的评论更新:

Select Distinct userID
FROM Table
WHERE CAST(Timestamp as date)>'20161231'
试试这个:

Select Distinct userID
FROM Table
WHERE DATEDIFF(yy,cast(Timestamp as date),getdate())>=1
根据您的评论更新:

Select Distinct userID
FROM Table
WHERE CAST(Timestamp as date)>'20161231'

这篇文章显示了你的零研究或努力。你已经基本上回答了这个问题。选择用户ID。。。从桌子上。。。。时间戳小于2016-12-31。我遇到了问题,因为我想选择userID,如果在该行中,它的时间戳大于该值,但在另一行中,相同的userID的时间戳小于您的问题的时间戳,并添加一些示例数据和基于该数据的预期输出。请另外:您使用的是哪种数据库管理系统?这篇文章显示您没有任何研究或努力。你已经基本上回答了这个问题。选择用户ID。。。从桌子上。。。。时间戳小于2016-12-31。我遇到了问题,因为我想选择userID,如果在该行中,它的时间戳大于该值,但在另一行中,相同的userID的时间戳小于您的问题的时间戳,并添加一些示例数据和基于该数据的预期输出。请另外:您使用的是哪种DBMS?如果要显示至少停留一年的用户如果要显示至少停留一年的用户