sql >> Base de Datos >  >> RDS >> Sqlserver

Promedio de múltiples columnas

No menciona si las columnas son anulables. Si lo son y desea la misma semántica que el AVG ofertas agregadas que puede hacer (2008)

SELECT *,
       (SELECT AVG(c)
        FROM   (VALUES(R1),
                      (R2),
                      (R3),
                      (R4),
                      (R5)) T (c)) AS [Average]
FROM   Request  

La versión de 2005 es un poco más tediosa

SELECT *,
       (SELECT AVG(c)
        FROM   (SELECT R1
                UNION ALL
                SELECT R2
                UNION ALL
                SELECT R3
                UNION ALL
                SELECT R4
                UNION ALL
                SELECT R5) T (c)) AS [Average]
FROM   Request