2014-01-09 33 views
0

我有一個問題,試圖在Crystal中拉一個報告。以下是我需要提取的數據字段的示例。這是一個特定事件的數據。我不知道如何分析這個數據

inci_id  timestamp    transtyp descript  unitcode 
140102994 1/3/2014 10:20:56 AM D Dispatched E16 
140102994 1/3/2014 10:20:56 AM D Dispatched E13 
140102994 1/3/2014 10:20:56 AM DXY DispatchXY E13 
140102994 1/3/2014 10:20:56 AM D Dispatched R13 
140102994 1/3/2014 10:20:56 AM DXY DispatchXY R13 
140102994 1/3/2014 10:20:57 AM D Dispatched TK10 
140102994 1/3/2014 10:20:57 AM D Dispatched E10 
140102994 1/3/2014 10:20:57 AM DXY DispatchXY E10 
140102994 1/3/2014 10:20:57 AM DXY DispatchXY R10 
140102994 1/3/2014 10:20:57 AM D Dispatched R10 
140102994 1/3/2014 10:20:57 AM D Dispatched BC3 
140102994 1/3/2014 10:20:57 AM DXY DispatchXY BC3 
140102994 1/3/2014 10:20:58 AM D Dispatched FTO3 
140102994 1/3/2014 10:20:58 AM DXY DispatchXY FTO3 
140102994 1/3/2014 10:20:58 AM D Dispatched TAC1 
140102994 1/3/2014 10:22:13 AM AK {E13} STATION ACKNOWLEDGE E13 
140102994 1/3/2014 10:22:19 AM AK {E10} STATION ACKNOWLEDGE E10 
140102994 1/3/2014 10:22:21 AM E En-Route R10 
140102994 1/3/2014 10:22:24 AM AK {FTO3} STATION ACKNOWLEDG FTO3 
140102994 1/3/2014 10:22:30 AM AK {E16} STATION ACKNOWLEDGE E16 
140102994 1/3/2014 10:22:38 AM E En-Route E16 
140102994 1/3/2014 10:22:46 AM E En-Route FTO3 
140102994 1/3/2014 10:22:58 AM AK {BC3} STATION ACKNOWLEDGE BC3 
140102994 1/3/2014 10:23:10 AM ARM Added Remarks 
140102994 1/3/2014 10:23:12 AM E En-Route E10 
140102994 1/3/2014 10:23:14 AM E En-Route E13 
140102994 1/3/2014 10:23:18 AM ARM Added Remarks 
140102994 1/3/2014 10:23:19 AM ARM Added Remarks 
140102994 1/3/2014 10:23:22 AM E En-Route TK10 
140102994 1/3/2014 10:23:24 AM E En-Route R13 
140102994 1/3/2014 10:25:11 AM E En-Route BC3 
140102994 1/3/2014 10:26:51 AM ARM Added Remarks 
140102994 1/3/2014 10:27:37 AM ARM Added Remarks 
140102994 1/3/2014 10:27:39 AM ARM Added Remarks 
140102994 1/3/2014 10:27:39 AM IC {E16} INCIDENT COMMAND E16 
140102994 1/3/2014 10:28:12 AM A Arrived E16 
140102994 1/3/2014 10:28:41 AM A Arrived R13 
140102994 1/3/2014 10:28:51 AM A Arrived R10 
140102994 1/3/2014 10:29:04 AM A Arrived E13 

我試圖建立需要比較的時間戳用於特定單元時調度的報告(transtype = d),並且當相同的單元到來(transtype = A),然後減去從一個到d給予差異。任何和所有的幫助,將不勝感激!

+0

對不起,第一次在這裏發佈。我認爲數據看起來正確。我將重新發布可讀的數據 – user3178948

+0

你只對'D-A'感興趣嗎? – craig

回答

0

假設:

inci_id  timestamp    transtyp descript     unitcode 
140102994 1/3/2014 10:20:56 AM D   Dispatched     E16 
140102994 1/3/2014 10:22:30 AM AK  {E16} STATION ACKNOWLEDGE E16 
140102994 1/3/2014 10:22:38 AM E   En-Route     E16 
140102994 1/3/2014 10:27:39 AM IC  {E16} INCIDENT COMMAND  E16 
140102994 1/3/2014 10:28:12 AM A   Arrived      E16 

我會使用一個command與此查詢:

SELECT d.inci_id, d.unitcode, d.timestamp dispatched, a.timestamp arrived 
FROM (
    SELECT inci_id, unitcode, timestamp 
    FROM table 
    WHERE transtyp='D' 
) 
-- require an 'Arrived' event; switch to LEFT OUTER JOIN if this isn't a requirement 
INNER JOIN (
    SELECT inci_id, unitcode, timestamp 
    FROM table 
    WHERE transtyp='A' 
) a ON d.inci_id=a.inci_id AND d.unitcode=a.unitcode 

你將不得不爲每個unitcode一行。然後你可以創建一個公式,給你的差異:

// {@elapsed} 
{command.arrived} - {command.dispatched} 
相關問題