Вікіпедія:Проєкт:Тематичний тиждень/Тиждень Танзанії/Результати
Зовнішній вигляд
Створені статті
[ред. код]Створенні статті |
---|
USE ukwiki_p;
SET SESSION group_concat_max_len = 10000;
SELECT @rownum := @rownum + 1 AS rank,
IFNULL(user_name, 'Всього'),
created,
total_len,
articles
FROM
(
SELECT
CONCAT('[[Користувач:', rev_user_text, '|', ']]') as user_name,
COUNT(1) AS created,
SUM(article.page_len) as total_len,
GROUP_CONCAT(
DISTINCT
-- [[Назва статті]]
CONCAT('[[',
REPLACE(article.page_title, '_', ' '), -- замінюємо у назві '_' на ' '
']]', ' (', article.page_len, ')')
-- список впорядкований за назвою статті
ORDER BY article.page_len DESC
-- розділений пробілом
SEPARATOR ' · '
) AS articles
FROM page article
JOIN revision
ON rev_page = article.page_id AND
rev_parent_id = 0 AND
20180813 * 1000000 <= rev_timestamp AND
rev_timestamp < 20180831 * 1000000
JOIN page talk
ON talk.page_title = article.page_title AND
talk.page_namespace IN (0, 1)
JOIN templatelinks ON
tl_from = talk.page_id AND
tl_title = 'Tanzania-week-new' AND
tl_namespace = 10
WHERE
article.page_namespace = 0 AND
article.page_is_redirect = 0
GROUP BY rev_user_text WITH ROLLUP) t,
(SELECT @rownum := -1) r
ORDER BY created DESC, total_len
|
Поліпшені статті
[ред. код]rank | IFNULL(article, 'Всього') | user_number | size_increase | users |
---|---|---|---|---|
0.0 | Всього | 11 | 31712.0 | Batsv (15686) · Дми88 (8307) · Стефанко1982 (3955) · Batsv (2034) · AndriiPigal (1674) · Yukh68 (72) · Crazydoktor (4) · IgorTurzh (4) · Vity OKM (3) · Стефанко1982 (-8) · 178.158.251.186 (-19) |
1.0 | Дар-ес-Салам | 4 | 15674.0 | Batsv (15686) · IgorTurzh (4) · Vity OKM (3) · 178.158.251.186 (-19) |
2.0 | Збірна Танзанії з футболу | 2 | 8379.0 | Дми88 (8307) · Yukh68 (72) |
3.0 | Танзанія на літніх Олімпійських іграх 2016 | 2 | 3959.0 | Стефанко1982 (3955) · Crazydoktor (4) |
4.0 | Географія Танзанії | 1 | 2034.0 | Batsv (2034) |
5.0 | Мкоані | 2 | 1666.0 | AndriiPigal (1674) · Стефанко1982 (-8) |
Поліпшені статті |
---|
USE ukwiki_p;
SET SESSION group_concat_max_len = 10000;
SELECT @rownum := @rownum + 1 AS rank,
IFNULL(article, 'Всього'),
user_number,
size_increase,
users
FROM
(
SELECT
CONCAT('[[', REPLACE(page_title, '_', ' '), ']]') as article,
COUNT(1) AS user_number,
SUM(user_size_increase) as size_increase,
GROUP_CONCAT(
DISTINCT
REPLACE(
CONCAT(
'[[Користувач:', rev_user_text, '|', ']]',
' (', user_size_increase ,')')
, '_', ' ')
ORDER BY user_size_increase DESC, rev_user_text
SEPARATOR ' · '
) AS users
FROM
(SELECT
rev.rev_user_text,
article.page_title,
SUM(rev.rev_len) - SUM(parent_rev.rev_len) AS user_size_increase
FROM page article
-- отримати версії статей
JOIN revision rev
ON rev.rev_page = article.page_id AND
20180813 * 1000000 <= rev_timestamp AND
rev_timestamp < 20180831 * 1000000
-- разом із попередніми версіями
JOIN revision parent_rev
ON parent_rev.rev_id = rev.rev_parent_id
-- і на сторінці обговорення чи у статі
JOIN page talk
ON talk.page_title = article.page_title AND
talk.page_namespace IN (0, 1)
-- має бути шаблон
JOIN templatelinks ON
tl_from = talk.page_id AND
tl_title = 'Tanzania-week-improve' AND
tl_namespace = 10
WHERE
article.page_namespace = 0 AND
article.page_is_redirect = 0
GROUP BY rev_user_text, article.page_title) r
GROUP BY article WITH ROLLUP) t,
(SELECT @rownum := -1) r
ORDER BY size_increase DESC, user_number DESC;
|