Aller au contenu

SQL - Taille des colonnes d ' un aDso dans une BDD en colonne

Dans HANA on utilise les BDD en colonne Il peut être intéressant de connaitre la taille des différentes colonnes :

SELECT
    TABLE_NAME,
    COLUMN_NAME,
    SUM(MEMORY_SIZE_IN_TOTAL) AS MEMORY_SIZE_IN_TOTAL,
    ROUND(SUM(MEMORY_SIZE_IN_TOTAL) / 1024 / 1024 / 1024, 2) AS GiB,
    ROUND(
        SUM(MEMORY_SIZE_IN_TOTAL)
        / NULLIF(SUM(SUM(MEMORY_SIZE_IN_TOTAL)) OVER (PARTITION BY TABLE_NAME), 0)
        , 6) AS RATIO,
    ROUND(
        100 * SUM(MEMORY_SIZE_IN_TOTAL)
        / NULLIF(SUM(SUM(MEMORY_SIZE_IN_TOTAL)) OVER (PARTITION BY TABLE_NAME), 0)
        , 2) AS PCT
 FROM M_CS_ALL_COLUMNS
WHERE SCHEMA_NAME = 'SAPANWR01'
  AND TABLE_NAME = '/BIC/AZMM_A0602'
GROUP BY
    TABLE_NAME,
    COLUMN_NAME
ORDER BY
    MEMORY_SIZE_IN_TOTAL DESC;