首页 > 解决方案 > 查询未分组

问题描述

我填了一张桌子,我需要这张桌子获得每日的销售量,但分别按天计算和计算销售量和客户量。

但不是按天对销售额进行分组,这是查询:

    insert into VentaDiariaTienda(
Fecha,
VentaDia,
Tda_Codigo,
NumeroClientes,
PromedioVtaCliente,
EditName,
EditDateTime)
        select 
        DATENAME(dw, T_Fecha) + ', ' + 
    cast(datepart(dd, T_Fecha) as char(2)) + ' ' + 
    datename(mm, T_Fecha) + ' ' +
    cast(datepart(yyyy,T_Fecha) as char(4)),
    sum(T_ImporteTotal/1.16),
    [FolTda_Codigo],
    count(T_Cliente),
    sum(T_ImporteTotal/1.16)/count(T_Cliente),
    'Admin',
    GETDATE()
         from #Tickets
         group by T_Fecha,[FolTda_Codigo]

这就是这个查询的结果

在此处输入图像描述

感谢您的回复。

标签: sql-server

解决方案


您必须将T_Fecha值“四舍五入”到一天,因此您可能会尝试插入以下记录:

SELECT
  DATENAME(dw, dt) + ', ' + 
  DATENAME(dd, dt) + ' ' + 
  DATENAME(mm, dt) + ' ' + 
  DATENAME(yy, dt),
  SUM(T_ImporteTotal)/1.16,
  FolTda_Codigo,
  COUNT(T_Cliente),
  SUM(T_ImporteTotal)/1.16/COUNT(T_Cliente),
  'Admin',
  GETDATE()
FROM #Tickets
CROSS APPLY (
    VALUES (DATEADD(day, DATEDIFF(day, 0, T_Fecha), 0))
) d (dt)
GROUP BY dt, FolTda_Codigo

推荐阅读