sql语句可以这么写 ,完全就是一个存储过程,
DECLARE @OrderCon varchar(300), @OrderCons varchar(500), @Orderstr varchar(550)
SET @OrderCons = '' DECLARE MyCursor CURSOR FOR
(SELECT OrderCon
FROM TBL_OrderConfirm
WHERE IsConfirmed = 0)
OPEN MyCursor
FETCH Next FROM MyCursor INTO @OrderCon
While(@@Fetch_Status = 0)
BEGIN
IF (@OrderCons != '')
Begin
SET @OrderCons = @OrderCons + 'OR'
End
SET @OrderCons = @OrderCons + @OrderCon
FETCH Next FROM MyCursor INTO @OrderCon
END
CLOSE myCursor DEALLOCATE myCursor
SET @Orderstr = ('SELECT COUNT(*) AS A_Count
FROM Tbl_order
WHERE Isdelete = 0 AND IsConfirmed = 1 AND IsPrint = 0 AND
OrderNo IS NOT NULL AND DeliveryWay = 1 AND ('+ @OrderCons + ')')
EXEC (@Orderstr)
DECLARE @OrderCon varchar(300), @OrderCons varchar(500), @Orderstr varchar(550)
SET @OrderCons = '' DECLARE MyCursor CURSOR FOR
(SELECT OrderCon
FROM TBL_OrderConfirm
WHERE IsConfirmed = 0)
OPEN MyCursor
FETCH Next FROM MyCursor INTO @OrderCon
While(@@Fetch_Status = 0)
BEGIN
IF (@OrderCons != '')
Begin
SET @OrderCons = @OrderCons + 'OR'
End
SET @OrderCons = @OrderCons + @OrderCon
FETCH Next FROM MyCursor INTO @OrderCon
END
CLOSE myCursor DEALLOCATE myCursor
SET @Orderstr = ('SELECT COUNT(*) AS A_Count
FROM Tbl_order
WHERE Isdelete = 0 AND IsConfirmed = 1 AND IsPrint = 0 AND
OrderNo IS NOT NULL AND DeliveryWay = 1 AND ('+ @OrderCons + ')')
EXEC (@Orderstr)