溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SQL-Serve查詢多條件聚合

發(fā)布時間:2020-04-07 23:52:58 來源:網(wǎng)絡 閱讀:553 作者:lk442634939 欄目:關系型數(shù)據(jù)庫

1、創(chuàng)建表單內(nèi)容,添加數(shù)據(jù)

--創(chuàng)建一個a表
CREATE?TABLE?a(
--設置name字段,屬性varchar?
NAME?VARCHAR(255),
--設置ERP字段,屬性varchar?
ERP??VARCHAR(255),
--設置DATE字段,屬性date?
DATE?DATE,
--設置name1字段,屬性varchar?
NAME1?VARCHAR(255),
--設置amount?字段,屬性int?
amount?int
)
INSERT?a?SELECT?'張三','餐費','2019-12-11','中行','100'
union?all?SELECT?'張三','禮品','2019-12-01','中行','100'
union?all?SELECT?'張三','禮品','2019-11-12','中行','60'
union?all?SELECT?'張三','禮品','2019-12-12','美行','60'
union?all?SELECT?'張三','12','2019-12-12','中行','100'
union?all?SELECT?'李四','餐費','2019-12-12','中行','50'
union?all?SELECT?'王五','禮品','2019-12-12','中行','60'

2、查詢反饋所有內(nèi)容信息

SELECT?*?from?a

SQL-Serve查詢多條件聚合


3、根據(jù)多條件進行聚合匯總

--查詢
select?
--查看name字段,并設置別名?姓名
name?as?'姓名',
--添加一個?餐費字段,并且設置別名?費用類型
'餐費'?as?'費用類型',
--查看date字段,并設置別名?月份
CONVERT(char(7),date,120)?as?'月份',
--查看name1字段,并設置別名客戶?名稱
name1?as?'客戶名稱',
--查看?統(tǒng)計amount字段,并且命名?金額
SUM(a.amount)?as?'金額'
--從表a查看
from?a
--設置查詢條件
where?
--查詢條件一、查詢name為張三的返回值
name='張三'?
--and進行連接多個條件
AND?
--查詢條件而、查詢?ERP等于禮品或者餐費
(ERP='禮品'?or?ERP='餐費')?
--連接條件
AND
--條件三,查詢時間大于2019-12-01
date?>=?'2019-12-01'
--條件四,結合聚合函數(shù),根據(jù)一個或者多個列對結果集進行分組,group?by?a,b,c的用法:
--先按照a分組,如果a相同,再按照b分組,如果b相同,再按照c分組。最終統(tǒng)計的是最小分組的信息。
group?by?name,CONVERT(char(7),date,120),name1

SQL-Serve查詢多條件聚合

4、小結

首先where 條件,再 group by 條件、再 order by 條件

如果聲明了 GROUP BY 子句,輸出就分成匹配一個或多個數(shù)值的不同組里。 如果出現(xiàn)了 HAVING 子句,那么它消除那些不滿足給出條件的組。

如果聲明了 ORDER BY 子句,那么返回的行是按照指定的順序排序的。 如果沒有給出 ORDER BY,那么數(shù)據(jù)行是按照系統(tǒng)認為可以最快生成的方法給出的。

雖然 SELECT 語句的完整語法較復雜,但是其主要的子句可歸納如下:
  SELECT select_list
  [ INTO new_table ]
  FROM table_source
  [ WHERE search_condition ]
  [ GROUP BY group_by_expression ]
  [ HAVING search_condition ]
  [ ORDER BY order_expression [ ASC | DESC ] ]
  可以在查詢之間使用 UNION 運算符,以將查詢的結果組合成單個結果集。

也就是說,order by放在最后面。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI