[步骤]
DECLARE @true BIT=1; DECLARE @false BIT=0; SELECT oi.OrderStatus, IsNeedProcurementResponse = ISNULL(oi.IsNeedProcurementResponse,0) , rn.NodeStatus, rn.PendingDepartmentId, MerchandiserNoHandle=CASE WHEN oi.OrderStatus=2 AND ISNULL(oi.MerchandiserAdminID,0)>0 AND ISNULL(oi.HandleMethodID,0)=0 THEN @true ELSE @false END, COUNT(DISTINCT oi.OrderCode) AS 'Count' FROM RB_ProcurementAbnormal_OrderInfo oi WITH(NOLOCK) LEFT JOIN RB_ProcurementAbnormal_OrderInfo_RelationNode rn WITH(NOLOCK) on oi.CustomerID = rn.CustomerID and oi.OrderCode=rn.OrderCode and oi.NodeInProcessing=rn.Id WHERE oi.CustomerID=1 GROUP BY oi.OrderStatus, ISNULL(oi.IsNeedProcurementResponse,0) , rn.NodeStatus, rn.PendingDepartmentId, CASE WHEN oi.OrderStatus=2 AND ISNULL(oi.MerchandiserAdminID,0)>0 AND ISNULL(oi.HandleMethodID,0)=0 THEN @true ELSE @false END
没有核心条件,全表扫码大量数据关联 结果几 有1957874 数据 多列分组
[结果]
[期望]
加入核心条件,或者 系统加入缓存 保证性能