Select DISTINCT DeliverLineName,DeliverSequence
,fjzl=isnull((Select SUM(TotalBarQuantity) From S21_SplitOrders Where OrderID in (Select OrderID From S21_SortedOrders Where DeliverLineName=SO.DeliverLineName)),0)
,khzs=isnull((Select Count(DISTINCT OrderID) From S21_SplitOrders Where OrderID in (Select OrderID From S21_SortedOrders Where DeliverLineName=SO.DeliverLineName)),0)
,yfjsl=isnull((Select SUM(TotalBarQuantity) From S21_SplitOrders where HasbeenStatus=-2 and OrderID in (Select OrderID From S21_SortedOrders Where DeliverLineName=SO.DeliverLineName)),0)
,yfjkh=isnull((Select Count(DISTINCT OrderID) From S21_SplitOrders where HasbeenStatus=-2 and OrderID in (Select OrderID From S21_SortedOrders Where DeliverLineName=SO.DeliverLineName)),0)
,wfjsl=isnull((Select SUM(TotalBarQuantity) From S21_SplitOrders where HasbeenStatus<>-2 and OrderID in (Select OrderID From S21_SortedOrders Where DeliverLineName=SO.DeliverLineName)),0)
,wfjkh=isnull((Select Count(DISTINCT OrderID) From S21_SplitOrders where HasbeenStatus<>-2 and OrderID in (Select OrderID From S21_SortedOrders Where DeliverLineName=SO.DeliverLineName)),0)
,case  isnull((Select Count(DISTINCT OrderID) From S21_SplitOrders Where OrderID in (Select OrderID From S21_SortedOrders Where DeliverLineName=SO.DeliverLineName)),0)-
isnull((Select Count(DISTINCT OrderID) From S21_SplitOrders where HasbeenStatus=-2 and OrderID in (Select OrderID From S21_SortedOrders Where DeliverLineName=SO.DeliverLineName)),0)
when 0 then '完成分拣' when isnull((Select Count(DISTINCT OrderID) From S21_SplitOrders Where OrderID in (Select OrderID From S21_SortedOrders Where DeliverLineName=SO.DeliverLineName)),0)
then   '未分拣' else '正在分拣' end as HasBeenStatus
From S21_SortedOrders SO Where SO.FlowLineID=1 Order by SO.DeliverSequence
请问这SQL如何优化可以让他提高查询速度