在SQL中计算加权平均值

时间:2016-12-07 18:20:12

标签: sql sql-server weighted-average

假设我有一个包含许多事务的表,但是我想根据该状态的存储数量对它们进行加权,是否有一个我可以使用的SQL命令来计算加权平均值而不仅仅是平均值( AVG())?

class VectorDevice
{
    T* data;
    size_t size;
    int dim, dim_aligned;

    struct A
    {
        __host__
        A()
        {
            bool neverCalled = true;
            if (!neverCalled)
            {
                deviceSizeOf<T><<<1, 1>>>(NULL);
                CUDA_ERR_CHECK(cudaGetLastError());
                CUDA_ERR_CHECK(cudaDeviceSynchronize());
            }
        }
    } a;

public :

    __host__ __device__
    VectorDevice() : data(NULL), size(0), dim(0) { }

    #pragma hd_warning_disable \
    #pragma nv_exec_check_disable
    __host__ __device__
    VectorDevice(int dim_) : data(NULL), size(0), dim(dim_)
    {
        ...
    }

    ...
};

...

1 个答案:

答案 0 :(得分:3)

没有

只需使用

Sum(1.0 * [NUMBER OF TRANSACTIONS])/SUM([Number Of Stores])

为您的示例数据提供19.44。

加利福尼亚州平均为20,伊利诺斯州为12.5,但加利福尼亚州有25家商店,而加州有2家,因此加权重。