mysql - 在log日志中已知用戶的某一步操作,如何獲取其上一步操作?
問題描述
公司的日志是記錄用戶的每一步操作的,to_page =’crhelp’為點擊幫助,查詢所有點擊過幫助的用戶進行的所有操作的代碼如下:
select date(to_timestamp(dt)),uuid,from_page,to_pagefrom actionlogwhere uuid in (select uuidfrom actionlogwhere to_page = ’crhelp’ and date(to_timestamp(dt)) between ’2016-09-15’ and ’2016-09-25’)and date(to_timestamp(dt)) between ’2016-09-15’ and ’2016-09-25’group by date(to_timestamp(dt)),uuid,from_page,to_pageorder by date(to_timestamp(dt))
查詢的部分結果為:
但是這些數據太多,無法查看用戶上一步的操作是什么,現在我已知用戶的某一步操作為“點擊幫助”,那我怎么樣才能知道他的上一步操作呢?從數據庫中查詢應該怎么查詢?如果在數據庫中無法實現,那在excel中是否可以做到?也就是,已知某一行的數據(to_page=’crhelp’),如何知道其上一行的內容?注意不是一行,是所有to_page=’crhelp’的上一行。
問題解答
回答1:如果這個表中,有專門的字段記錄了,沒調,數據的“父ID”,你可以參考PostgreSQL的CTE語法http://www.postgres.cn/docs/9...
如果存儲空間不是問題,你希望得到最好的性能可以參考PostgreSQL的專有數據類型ltree。http://www.postgres.cn/docs/9...
