首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

急如何执行这个存储过程啊

2012-04-15 
急急急!怎么执行这个存储过程啊!select SaleDay,sum(orderMoney)as OrderMoney,sum(OrderQty) as OrderQty

急急急!怎么执行这个存储过程啊!

select SaleDay,sum(orderMoney)as OrderMoney,sum(OrderQty) as OrderQty,sum(RtnCash) as RtnCash,sum(RtnCount) as RtnCount from
(
select convert(date,CreateTime) as SaleDay,sum(shouldpay) as OrderMoney,count(orderId) as OrderQty,0 as RtnCash,0 AS RtnCount 
from dbo.Sales_Order--订单销售表
where status>=3 and CreateTime>convert(date,'{@BeginDate}') and CreateTime<convert(date,dateadd(day,1,'{@EndDate}'))and saleBy='{@saleBy}'
group by convert(date,CreateTime)
union all
select convert(date,CreateTime) as SaleDay,0 as OrderMoney,0 as OrderQty,SUM(RtnCash) as RtnCash,count(*) as RtnCount 
FROM dbo.Sales_RtnOrder--订单退换表
where status>=1 and CreateTime>convert(date,'{@BeginDate}') and CreateTime<convert(date,dateadd(day,1,'{@EndDate}'))
group by convert(date,CreateTime)
)a group by SaleDay--销售天数


我想 在数据库执行一下查询(目前这个脚本)




[解决办法]

SQL code
CREATE PROCEDURE YourPROCname    (      @BeginDate VARCHAR(30) ,      @EndDate VARCHAR(30) ,      @saleBy INT    )AS     BEGIN        SELECT  SaleDay ,                SUM(orderMoney) AS OrderMoney ,                SUM(OrderQty) AS OrderQty ,                SUM(RtnCash) AS RtnCash ,                SUM(RtnCount) AS RtnCount        FROM    ( SELECT    CONVERT(DATE, CreateTime) AS SaleDay ,                            SUM(shouldpay) AS OrderMoney ,                            COUNT(orderId) AS OrderQty ,                            0 AS RtnCash ,                            0 AS RtnCount                  FROM      dbo.Sales_Order--订单销售表                  WHERE     status >= 3                            AND CreateTime > CONVERT(DATE, @BeginDate)                            AND CreateTime < CONVERT(DATE, DATEADD(day, 1,                                                              @EndDate))                            AND saleBy = @saleBy                  GROUP BY  CONVERT(DATE, CreateTime)                  UNION ALL                  SELECT    CONVERT(DATE, CreateTime) AS SaleDay ,                            0 AS OrderMoney ,                            0 AS OrderQty ,                            SUM(RtnCash) AS RtnCash ,                            COUNT(*) AS RtnCount                  FROM      dbo.Sales_RtnOrder--订单退换表                  WHERE     status >= 1                            AND CreateTime > CONVERT(DATE, @BeginDate)                            AND CreateTime < CONVERT(DATE, DATEADD(day, 1,                                                              @EndDate))                  GROUP BY  CONVERT(DATE, CreateTime)                ) a        GROUP BY SaleDay--销售天数    END--执行存储过程EXEC YourPROCname '2010-02-01','2011-02-01',45 

热点排行