Cher tous,
J’ai besoin de votre aide pour exécuter un code SQL afin de visualiser la taille de chaque catégorie afin de suivre périodiquement pour s’assurer que la catégorie ne dépasse pas la taille convenue par les modérateurs.
Nous avons exécuté le code suivant, mais le résultat est affiché en octets et nous avons besoin qu’il soit affiché en Go ou en Mo.
-- Requête pour estimer la taille des données pour chaque catégorie en Mo et Go
SELECT
c.id AS category_id,
c.name AS category_name,
COUNT(DISTINCT t.id) AS topics_count,
COUNT(p.id) AS posts_count,
ROUND(SUM(LENGTH(p.raw)) / 1024 / 1024, 2) AS total_text_size_mb,
ROUND(SUM(LENGTH(p.raw)) / 1024 / 1024 / 1024, 4) AS total_text_size_gb,
ROUND(COALESCE(SUM(u.filesize), 0) / 1024 / 1024, 2) AS total_uploads_size_mb,
ROUND(COALESCE(SUM(u.filesize), 0) / 1024 / 1024 / 1024, 4) AS total_uploads_size_gb,
ROUND((COALESCE(SUM(u.filesize), 0) + SUM(LENGTH(p.raw))) / 1024 / 1024, 2) AS total_category_size_mb,
ROUND((COALESCE(SUM(u.filesize), 0) + SUM(LENGTH(p.raw))) / 1024 / 1024 / 1024, 4) AS total_category_size_gb
FROM
categories c
LEFT JOIN
topics t ON t.category_id = c.id
LEFT JOIN
posts p ON p.topic_id = t.id
LEFT JOIN
post_custom_fields pcf ON pcf.post_id = p.id AND pcf.name = 'uploads'
LEFT JOIN
uploads u ON u.id = pcf.value::int
WHERE
c.id > 0 -- Exclure les catégories système
AND t.deleted_at IS NULL -- Exclure les sujets supprimés
AND p.deleted_at IS NULL -- Exclure les publications supprimées
GROUP BY
c.id, c.name
ORDER BY
total_category_size_mb DESC
J’ai besoin de votre aide pour l’afficher dans le format suivant :
