webForumDet fria alternativet

Ta fram antal minuter/sekunder

1 svar · 267 visningar · startad av Obbelix

ObbelixMedlem sedan okt. 2002257 inlägg
#1

Har en tabell som ser ut som följer:

[b]game_id | period | period_time_min | period_time_sec | action_type | player_id | team_id[/b]
23        1        0                 0                 GK in         55          123
23        1        0                 0                 GK in         63          144
23        1        6                 34                Goal          34          144
23        1        20                0                 GK out        55          123
23        1        20                0                 GK out        63          144
23        2        0                 0                 GK in         55          123
23        2        0                 0                 GK in         63          144
23        2        8                 45                Goal          71          144
23        2        12                22                GK out        55          123
23        2        12                22                GK in         92          123
23        2        20                0                 GK out        63          144
23        2        20                0                 GK out        92          123

Nu skulle jag vilja räkna ut hur många sekunder (minuter) som varje målvakt stått i mål i en aktuell match. Som ni ser kommer målvakterna in i period 1 och båda står hela den (20 min).
Sen i andra gör ena laget ett byte efter 12:22 och då borde resultatet bli följande:

[b]game_id | team_id | player_id | time_in_goal[/b] (sekunder)
23        123       55          1942
23        144       63          2400
23        123       92          458

Går det att få ut följande i en SQL-fråga eller ska man göra på nåt annat sätt?
Använder ASP + MSSQL 2000

LarsGMedlem sedan dec. 200012 464 inlägg
#2
select game_id,
       player_id,
       team_id,
       sum(case when action_type = 'GK in' then -1 else 1 end *
           (60*period_time_min+period_time_sec))
    from games
  where action_type in ('GK in','GK out')
 group by game_id,
       player_id,
       team_id
127 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)