SQL Server简单实现数据的日报和月报功能

本文实例讲述了SQL Server简单实现数据的日报和月报功能。分享给大家供大家参考,具体如下:

–320, SQL SERVER 日报
–查询2009-01-01当天客户A1,A2,A3的订单数量
SELECT Cust_Name
, CONVERT(CHAR(10), Order_Date, 120) Order_Date
, SUM(Qty) Qty
FROM Orders_Big
WHERE 1=1
AND Cust_Name IN (‘A1’, ‘A2’, ‘A3’)
AND Order_Date >= ‘2009-01-01’
AND Order_Date<‘2009-01-02’
/*AND Order_Date — BETWEEN…AND相当于>=和<=
BETWEEN ‘2009-01-01’
AND ‘2009-01-02’*/
GROUP BY Cust_Name
, CONVERT(CHAR(10), Order_Date, 120)
ORDER BY 2, 1
–321. ORACLE 日报
–查询2009-01-01当天客户A1,A2,A3的订单数量
SELECT Cust_Name
, TO_CHAR(Order_Date, ‘YYYY-MM-DD’) Order_Date –方法一:转换成字符串类型
–, TRUNC(Order_Date) Order_Date –方法二:将时分秒信息截断
, SUM(Qty) Qty
FROM Orders_Big
WHERE 1=1
AND Cust_Name IN (‘A1’, ‘A2’, ‘A3′)
AND Order_Date >= DATE’2009-01-01′
AND Order_Date<DATE’2009-01-02’
GROUP BY Cust_Name
, TO_CHAR(Order_Date, ‘YYYY-MM-DD’)–方法一
–, TRUNC(Order_Date)–方法二
ORDER BY 2, 1
——————————10.2————————————
–326,SQL SERVER 月报
SELECT Cust_Name
, CONVERT(CHAR(7), Order_Date, 120) Order_YrMs
, CAST(CONVERT(CHAR(7), Order_Date, 120) + ‘-01’ AS DATETIME) Order_Date
, SUM(Qty) Qty
FROM Orders_Big
WHERE 1=1
AND Cust_Name IN (‘A1’, ‘A2’, ‘A3’)
AND Order_Date >= ‘2009-01-01’
AND Order_Date<‘2009-02-01’
GROUP BY Cust_Name
, CONVERT(CHAR(7), Order_Date, 120)
ORDER BY 2, 1
–326, ORACLE
SELECT Cust_Name
, TO_CHAR(Order_Date, ‘YYYY-MM’) Order_YrMs –方法1
–, TRUNC(Order_Date, ‘MM’) Order_Date–方法2
, SUM(Qty) Qty
FROM Orders_Big
WHERE 1=1
AND Cust_Name IN (‘A1’, ‘A2’, ‘A3′)
AND Order_Date >= DATE’2009-01-01′
AND Order_Date<DATE’2009-02-01’
GROUP BY Cust_Name
, TO_CHAR(Order_Date, ‘YYYY-MM’)–方法1
–, TRUNC(Order_Date, ‘MM’)–方法2
ORDER BY 2, 1

希望本文所述对大家SQL Server数据库程序设计有所帮助。


数据运维技术 » SQL Server简单实现数据的日报和月报功能