diff --git a/dump_new.pg.sql b/dump_new.pg.sql new file mode 100644 index 0000000..de13b1a --- /dev/null +++ b/dump_new.pg.sql @@ -0,0 +1,73 @@ +WITH +----------raw message content--------------- +ext AS ( + SELECT + -- t.filename + (t.mdate - ((EXTRACT(DOW FROM t.mdate) - 5 + 7) % 7) * INTERVAL '1 day')::date AS week_ending + ,t.mdate + ,message->>'text' markdown + ,to_char(row_number() OVER (partition by (t.mdate - ((EXTRACT(DOW FROM t.mdate) - 5 + 7) % 7) * INTERVAL '1 day')::date),'FM000') seq + FROM + rlarp.thirtysec t + ORDER BY + t.mdate DESC +) +----------create unqiue list of weeks------- +,wk AS ( + SELECT + week_ending + ,'# '||week_ending markdown + ,to_char(row_number() OVER (ORDER BY week_ending ASC),'FM000') seq + FROM + ext + CROSS JOIN (VALUES ('A'),('B')) r (flag) + GROUP BY + week_ending + ORDER BY + week_ending ASC +) +,wkh AS ( + SELECT + w.week_ending + ,w.seq||'.'||'000' || '.' || r.flag seq + ,CASE r.flag + WHEN 'A' THEN w.markdown + WHEN 'B' THEN '' + END markdown + FROM + wk w + CROSS JOIN (VALUES ('A'),('B')) r (flag) +) +--------level 2 message header---------- +,msg AS ( + SELECT + e.week_ending + ,w.seq || '.' || e.seq || '.' || r.flag seq + ,CASE r.flag + WHEN 'A' THEN '## [[]]' + WHEN 'B' THEN e.markdown + WHEN 'C' THEN '' + END markdown + -- ,r.flag + FROM + ext e + CROSS JOIN (VALUES ('A'),('B'),('C')) r (flag) + INNER JOIN wk w ON + w.week_ending = e.week_ending +) +,stack AS ( + SELECT + week_ending + ,seq + ,markdown + FROM + msg + UNION ALL + SELECT + week_ending + ,seq + ,markdown + FROM + wkh +) +SELECT * FROM stack order by seq limit 1000