我有一张这样的表:
name date/time ====== =================== Alan 2014-1-1 1:20 Alan 2014-1-1 1:30 Alan 2014-1-1 1:46 Alan 2014-1-2 1:40 Alan 2014-1-2 2:46 Alan 2014-1-2 3:00 Alan 2014-1-2 4:00 Mary 2014-1-1 12:10 Mary 2014-1-1 12:20 Mary 2014-1-2 12:10 Mary 2014-1-2 13:00 Mary 2014-1-2 14:00
我希望每天只列出一行查询,例如:
Alan 2014-1-1 1:20 Alan 2014-1-2 2:46 Mary 2014-1-1 12:20 Mary 2014-1-2 12:10
答案 0 :(得分:2)
您可以使用DateValue
为午夜提供日期/时间值。然后GROUP BY name
和DateValue
。
此查询返回每个人/日期组合的最早时间。这与您请求的输出不同,但我不理解您用来确定哪一行应该是为每个人/日期对返回的行的逻辑。您可能决定要将该选择基于Min
之外的其他内容,但我认为您需要从类似的GROUP BY
策略开始。
SELECT
y.name,
DateValue(y.[date/time]) AS date_at_midnite,
Min(y.[date/time]) AS earliest_time
FROM YourTable AS y
GROUP BY
y.name,
DateValue(y.[date/time]);