【发布时间】:2016-04-27 19:15:10
【问题描述】:
我在 Netezza 的 web_event 表中有一些数据,格式如下。
vstr_id | sessn_id | sessn_ts | wbpg_nm
V1 | V1S1 | 02-02-2015 09:20:00 | /home/login
V1 | V1S1 | 02-02-2015 09:30:00 | /home/contacts
V1 | V1S1 | 02-02-2015 09:50:00 | /home/search
V2 | V2S1 | 02-02-2015 09:10:00 | /home
V2 | V2S1 | 02-02-2015 09:15:00 | /home/apps
V2 | V2S2 | 02-02-2015 09:20:00 | /home/news
V2 | V2S2 | 02-02-2015 09:23:00 | /home/news/internal
这是我的源表。
我正在尝试使用该 web_event 表并创建另一个表,如下所示。
我希望像下面这样加载 sessn_durtn 表和 time_on_pg 表。
1) sessn_durtn 列:根据排序的时间字段,这应该是会话开始事件和会话结束事件之间的时间差。它可以用分钟或秒来表示
I am trying to to do
Insert into sessn_durtn (select VSTR_ID,
SESSN_ID,
????? as sessn_durtn,
from web_event)
vstr_id | sessn_id | seesn_durtn
V1 | V1S1 | 30mins
V2 | V2S1 | 5mins
V2 | V2S2 | 3mins
2) time_on_page 列:当前页与下一页的时间差,会话的最后一页可以有0秒。它可以用分钟或秒来表示。
Insert into time_on_pg (select VSTR_ID,
SESSN_ID,
sessn_ts,
WBPG_NM,
????? as time_on_page
from web_event)
vstr_id | sessn_id | sessn_ts | wbpg_nm | time_on_page
V1 | V1S1 | 02-02-2015 09:20:00 | /home/login | 10mins
V1 | V1S1 | 02-02-2015 09:30:00 | /home/contacts | 20mins
V1 | V1S1 | 02-02-2015 09:50:00 | /home/search | 0mins
V2 | V2S1 | 02-02-2015 09:10:00 | /home | 5mins
V2 | V2S1 | 02-02-2015 09:15:00 | /home/apps | 0mins
V2 | V2S2 | 02-02-2015 09:20:00 | /home/news | 3mins
V2 | V2S2 | 02-02-2015 09:23:00 | /home/news/internal | 0mins
我们如何在 Netezza 或任何 SQL 查询中做到这一点?
【问题讨论】:
标签: sql stored-procedures netezza