80 lines
1.5 KiB
MySQL
80 lines
1.5 KiB
MySQL
|
-- Adding report_count and unresolved_report_count
|
||
|
-- to the post and comment aggregate tables
|
||
|
ALTER TABLE post_aggregates
|
||
|
ADD COLUMN report_count smallint NOT NULL DEFAULT 0,
|
||
|
ADD COLUMN unresolved_report_count smallint NOT NULL DEFAULT 0;
|
||
|
|
||
|
ALTER TABLE comment_aggregates
|
||
|
ADD COLUMN report_count smallint NOT NULL DEFAULT 0,
|
||
|
ADD COLUMN unresolved_report_count smallint NOT NULL DEFAULT 0;
|
||
|
|
||
|
-- Update the historical counts
|
||
|
-- Posts
|
||
|
UPDATE
|
||
|
post_aggregates AS a
|
||
|
SET
|
||
|
report_count = cnt.count
|
||
|
FROM (
|
||
|
SELECT
|
||
|
post_id,
|
||
|
count(*) AS count
|
||
|
FROM
|
||
|
post_report
|
||
|
GROUP BY
|
||
|
post_id) cnt
|
||
|
WHERE
|
||
|
a.post_id = cnt.post_id;
|
||
|
|
||
|
-- The unresolved
|
||
|
UPDATE
|
||
|
post_aggregates AS a
|
||
|
SET
|
||
|
unresolved_report_count = cnt.count
|
||
|
FROM (
|
||
|
SELECT
|
||
|
post_id,
|
||
|
count(*) AS count
|
||
|
FROM
|
||
|
post_report
|
||
|
WHERE
|
||
|
resolved = 'f'
|
||
|
GROUP BY
|
||
|
post_id) cnt
|
||
|
WHERE
|
||
|
a.post_id = cnt.post_id;
|
||
|
|
||
|
-- Comments
|
||
|
UPDATE
|
||
|
comment_aggregates AS a
|
||
|
SET
|
||
|
report_count = cnt.count
|
||
|
FROM (
|
||
|
SELECT
|
||
|
comment_id,
|
||
|
count(*) AS count
|
||
|
FROM
|
||
|
comment_report
|
||
|
GROUP BY
|
||
|
comment_id) cnt
|
||
|
WHERE
|
||
|
a.comment_id = cnt.comment_id;
|
||
|
|
||
|
-- The unresolved
|
||
|
UPDATE
|
||
|
comment_aggregates AS a
|
||
|
SET
|
||
|
unresolved_report_count = cnt.count
|
||
|
FROM (
|
||
|
SELECT
|
||
|
comment_id,
|
||
|
count(*) AS count
|
||
|
FROM
|
||
|
comment_report
|
||
|
WHERE
|
||
|
resolved = 'f'
|
||
|
GROUP BY
|
||
|
comment_id) cnt
|
||
|
WHERE
|
||
|
a.comment_id = cnt.comment_id;
|
||
|
|