Encuentra el promedio de dos columnas combinadas en sql

Quiero encontrar el promedio del total de dos columnas. Quiero contar el total de col1 y el total de col2 y luego encontrar el promedio (en cuántas filas diferentes están).

He logrado encontrar una solución en el presentesqlfiddle (ver también abajo) ¿es esta la mejor manera? Inicialmente pensé que necesitaría usar la función avg pero no podría resolverlo con esto.

    CREATE TABLE test (
        id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
        uid INT,
        col1 INT,
        col2 INT
    ) DEFAULT CHARACTER SET utf8 ENGINE=InnoDB;

    INSERT INTO test (id, uid, col1, col2) VALUES
    (1,5,8,12),
    (2,1,2,3),
    (3,1,2,33),
    (4,5,25,50),
    (5,5,22,3);

    (
    SELECT ((sum(col1) + sum(col2))/count(*))
    FROM test
      WHERE uid=5
    )

Respuestas a la pregunta(6)

Su respuesta a la pregunta