PostgreSQL - 提取每个用户最早的时间戳
PostgreSQL - Pull earliest timestamp per user
我有一个 table 记录用户每次执行特定行为的时间,每次迭代都有时间戳。作为嵌套查询的一部分,我需要从每个具有最早时间戳的用户中提取一行。
例如,table 看起来像这样:
+ row | user_id | timestamp | description
+ 1 | 100 | 02-02-2010| android
+ 2 | 100 | 02-03-2010| ios
+ 3 | 100 | 02-05-2010| windows
+ 4 | 111 | 02-01-2010| ios
+ 5 | 112 | 02-03-2010| android
+ 6 | 112 | 02-04-2010| android
我的查询应该只提取第 1、4 和 5 行。
谢谢!
这应该有帮助。不明白你的嵌套查询部分。
SELECT user_id, MIN(timestamp) AS min_timestamp
FROM table1
GROUP BY user_id
ORDER BY user_id;
我有一个 table 记录用户每次执行特定行为的时间,每次迭代都有时间戳。作为嵌套查询的一部分,我需要从每个具有最早时间戳的用户中提取一行。
例如,table 看起来像这样:
+ row | user_id | timestamp | description
+ 1 | 100 | 02-02-2010| android
+ 2 | 100 | 02-03-2010| ios
+ 3 | 100 | 02-05-2010| windows
+ 4 | 111 | 02-01-2010| ios
+ 5 | 112 | 02-03-2010| android
+ 6 | 112 | 02-04-2010| android
我的查询应该只提取第 1、4 和 5 行。
谢谢!
这应该有帮助。不明白你的嵌套查询部分。
SELECT user_id, MIN(timestamp) AS min_timestamp
FROM table1
GROUP BY user_id
ORDER BY user_id;