我的数据库中有一个表,我正在使用SQL查询从中检索数据。在我的查询中,我正在替换一些文本并使用整数。查询返回以下数据:
user_id | event_code | total_bookmarks | total_folders | folder_depth | ts
0 8 34 6 1 128926
0 8 35 6 1 129001
4 8 18 2 1 123870
6 8 30 2 1 130099
6 8 30 2 1 132000
6 8 30 2 1 147778
我使用的查询是:
SELECT
user_id,
event_code,
CAST(REPLACE(data1, 'total bookmarks', '') AS INTEGER) as total_bookmarks,
CAST(REPLACE(data2, 'folders', '') AS INTEGER) as total_folders,
CAST(REPLACE(data3, 'folder depth ', '') AS INTEGER) as folder_depth,
timestamp AS ts
FROM events
WHERE event_code = 8
我需要添加哪些内容才能为每个唯一的user_id选择每个id的最大ts(时间戳)?我尝试了MAX(时间戳),但是如果total_bookmark不同,我得到两行返回相同的ID(例如:user_id 0一行有34,另一行有35)我希望表看起来像这样:
user_id | event_code | total_bookmarks | total_folders | folder_depth | ts
0 8 34 6 1 129001
4 8 18 2 1 123870
6 8 30 2 1 147778
答案 0 :(得分:0)
NULL