本文实例讲述了SQL Server简单实现数据的日报和月报功能。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
--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数据库程序设计有所帮助。