本文实例讲述了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数据库程序设计有所帮助。
本文地址:https://www.stayed.cn/item/13850
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我