Подсчитайте количество столбцов с истинным значением, затем разделите его на общее количество столбцов. - PullRequest
0 голосов
/ 10 июля 2020

Предположим, что приведенная ниже таблица называется Таблица

    **---------------------------------------------
    ID    Col1    Col2    Col3    Col4  ...  Total
    --------------------------------------------
    1      1       0      NULL     1          30.33
    2      0       1       1       1          60.12
    3      1       1       0       0          20.12
    4      1       0       1       1          60.12
    5      0      NULL    NULL     1          10.19
    6      1       1      NULL     1          90.00   
    7      0       0      NULL     0          0.00
    --------------------------------------------**

Я хотел подсчитать и получить среднее количество столбцов, в которых есть «истина». И отобразите общее среднее значение в столбцах «Итого». Например, есть 10 столбцов и 5 столбцов истинны, поэтому я разделил их и получил 50% в сумме. Предполагая, что все столбцы, которые я буду считать, являются битовыми и имеют значение null, 0 и 1. Как этого добиться?

1 Ответ

1 голос
/ 10 июля 2020

Вы можете использовать:

SELECT
    ID,
    100.0*(COALESCE(Col1, 0) + COALESCE(Col2, 0) + ... + COALESCE(Col10, 0)) / 10 AS pct
FROM yourTable;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...