Changes between Version 12 and Version 13 of P6


Ignore:
Timestamp:
04/28/26 10:50:51 (4 days ago)
Author:
211099
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • P6

    v12 v13  
    2626        COUNT(DISTINCT rli.list_id) AS saved_in_lists
    2727    FROM story s
    28     JOIN writer w   ON s.user_id    = w.user_id
    29     JOIN users u   ON w.user_id    = u.user_id
    30     JOIN status st  ON s.story_id   = st.story_id
    31     LEFT JOIN chapter ch  ON s.story_id   = ch.story_id
    32     LEFT JOIN likes l   ON s.story_id   = l.story_id
    33     LEFT JOIN comment c   ON s.story_id   = c.story_id
    34     LEFT JOIN collaboration col ON s.story_id   = col.story_id
    35     LEFT JOIN has_genre hg  ON s.story_id   = hg.story_id
    36     LEFT JOIN reading_list_items rli ON s.story_id  = rli.story_id
     28    JOIN writer w   ON s.user_id = w.user_id
     29    JOIN users u   ON w.user_id  = u.user_id
     30    JOIN status st  ON s.story_id = st.story_id
     31    LEFT JOIN chapter ch  ON s.story_id = ch.story_id
     32    LEFT JOIN likes l   ON s.story_id  = l.story_id
     33    LEFT JOIN comment c   ON s.story_id  = c.story_id
     34    LEFT JOIN collaboration col ON s.story_id  = col.story_id
     35    LEFT JOIN has_genre hg  ON s.story_id  = hg.story_id
     36    LEFT JOIN reading_list_items rli ON s.story_id = rli.story_id
    3737    GROUP BY
    3838        DATE_TRUNC('quarter', s.story_created_at),
     
    5151            / NULLIF(total_chapters, 0), 2
    5252        ) AS avg_views_per_chapter,
    53         LAG(total_views)    OVER (PARTITION BY story_id ORDER BY quarter)  AS prev_quarter_views,
    54         LAG(total_likes)    OVER (PARTITION BY story_id ORDER BY quarter)  AS prev_quarter_likes,
     53        LAG(total_views) OVER (PARTITION BY story_id ORDER BY quarter)  AS prev_quarter_views,
     54        LAG(total_likes)OVER (PARTITION BY story_id ORDER BY quarter)  AS prev_quarter_likes,
    5555        LAG(total_comments) OVER (PARTITION BY story_id ORDER BY quarter)  AS prev_quarter_comments
    5656    FROM quarterly_story_stats
     
    114114Base ←
    115115story s
    116 ⨝ (s.user_id = w.user_id)    writer w
    117 ⨝ (w.user_id = u.user_id)    users u
     116⨝ (s.user_id = w.user_id) writer w
     117⨝ (w.user_id = u.user_id) users u
    118118⨝ (s.story_id = st.story_id) status st
    119119
    120120WithChapters ←
    121121Base
    122 ⟕ (s.story_id = ch.story_id)  chapter ch
     122⟕ (s.story_id = ch.story_id) chapter ch
    123123
    124124WithLikes ←
    125125WithChapters
    126 ⟕ (s.story_id = l.story_id)   likes l
     126⟕ (s.story_id = l.story_id) likes l
    127127
    128128WithComments ←
    129129WithLikes
    130 ⟕ (s.story_id = c.story_id)   comment c
     130⟕ (s.story_id = c.story_id) comment c
    131131
    132132WithCollabs ←
     
    136136WithGenres ←
    137137WithCollabs
    138 ⟕ (s.story_id = hg.story_id)  has_genre hg
     138⟕ (s.story_id = hg.story_id) has_genre hg
    139139
    140140WithLists ←
     
    159159  total_collaborators := COUNT(DISTINCT col.user_id),
    160160  total_genres := COUNT(DISTINCT hg.genre_id),
    161   saved_in_lists      := COUNT(DISTINCT rli.list_id)
     161  saved_in_lists := COUNT(DISTINCT rli.list_id)
    162162(
    163163  WithLists
     
    169169  ROUND((total_likes + total_comments) / NULLIF(total_views, 0) * 100, 2)  → engagement_rate,
    170170  ROUND(total_views / NULLIF(total_chapters, 0), 2) → avg_views_per_chapter,
    171   LAG(total_views)    OVER (PARTITION BY story_id ORDER BY quarter) → prev_quarter_views,
    172   LAG(total_likes)    OVER (PARTITION BY story_id ORDER BY quarter) → prev_quarter_likes,
     171  LAG(total_views) OVER (PARTITION BY story_id ORDER BY quarter) → prev_quarter_views,
     172  LAG(total_likes) OVER (PARTITION BY story_id ORDER BY quarter) → prev_quarter_likes,
    173173  LAG(total_comments) OVER (PARTITION BY story_id ORDER BY quarter) → prev_quarter_comments
    174174(
     
    242242    FROM genre g
    243243    JOIN has_genre hg ON g.genre_id = hg.genre_id
    244     JOIN story               s  ON hg.story_id = s.story_id
    245     JOIN writer              w  ON s.user_id = w.user_id
    246     JOIN status              st ON s.story_id = st.story_id AND st.status = 'published'
     244    JOIN story s  ON hg.story_id = s.story_id
     245    JOIN writer w  ON s.user_id = w.user_id
     246    JOIN status st ON s.story_id = st.story_id AND st.status = 'published'
    247247    LEFT JOIN chapter ch ON s.story_id = ch.story_id
    248248    LEFT JOIN likes l  ON s.story_id = l.story_id