SUM()和COUNT()聚合函式
當我們需要在一條Sql語句中進行不同條件的統計時,單獨的COUNT()無法滿足我們的需求,這時可以通過SUM()來完成。
SELECT
CourseID,
TotalCount=COUNT(*),
UnreadCount=SUM(CASE WHEN ReadStatus=0 THEN 1 ELSE 0 END)
FROM CourseComments GROUP BY CourseID
COUNT() 函式返回匹配指定條件的行數。
SUM 函式返回數值列的總數(總額)。
在SUM中的CASE可以理解為先為查詢到的結果集增加了外部行ReadCount,滿足條件的計數1,不滿足條件計數0,然後再用SUM函式求和得到統計的總數。例:
SELECT
CourseID,
TotalCount=COUNT(*),
UnreadCount=SUM(ReadCount)
FROM (SELECT CourseID, ReadCount=(CASE WHEN ReadStatus=0 THEN 1 ELSE 0 END) FROM CourseComments) A GROUP BY A.CourseID
相關推薦
SUM()和COUNT()聚合函式
當我們需要在一條Sql語句中進行不同條件的統計時,單獨的COUNT()無法滿足我們的需求,這時可以通過SUM()來完成。SELECT CourseID, TotalCount=COUNT(*), UnreadCount=SUM(CASE WHEN Re
使用SQL語句統計資料時sum和count函式中使用if判斷條件
首先舉個栗子(不想看的話直接下面看總結): order_type:訂單型別 open_id:使用者唯一標識 SELECT date(create_time) AS '當天日期', sum(real_price) AS '當天總收入',
Hive Sum MAX MIN聚合函式
資料準備cookie1,2015-04-10,1cookie1,2015-04-11,5cookie1,2015-04-12,7cookie1,2015-04-13,3cookie1,2015-04-14,2cookie1,2015-04-15,4cookie1,2015-04-16,4建立資料庫及表crea
實際中來總結sql裡面 sum 和 count區別
用通俗的實際例子來說明問題 count()是算行數的,sum是求和的 比如說表mm: 小明 小紅 語文 50 80 數學 60 70 英語 70 90 如果算小明學了
oracle 中sum和count的區別
例1:查詢出現過2次的name。 往往初學者會錯誤地認為在where 語句裡直接使用count()演算法,很顯然這個想法是錯誤的,count()方法並不能被用在where子句中,為了解決問題,我們可以在group by子句後面使用HAVING來做條件限制。 錯誤做法:select * from aaa
資料庫中sum和count的區別
sum()函式和count()函式的區別: 1)求和用累加sum(),求行的個數用累計count() 2)資料庫中對空值的處理:sum()不計算,count()認為沒有此項; 示例: SUM是對符合條件的記錄的數值列求和 COUNT 是對查詢中符合條件的結果
mysql聚合函式count(1) sum(1)結果返回0和NULL
1.count(1) 返回為0 如果所查詢的表或者where條件篩選後得到的結果集為空,則 count(1)返回為 0 如: select count(id) from test; select count(id) from test where id < 0; 返回為NULL 如果所查詢的
聚合函式&count&sum&avg&max&min
聚合函式的最大特點是根據一組資料求出一個值。聚合函式的結果值只根據選定行中非NULL的值進行計算,NULL值被忽略。count:對於除"*"以外的任何引數,返回所選擇集合中非NULL值的行的數目;對於引數"*",返回選擇集合中所有行的數目,包含NULL值的行。舉例:SELECT count(*) FROM t
儲存過程使用sum()、count()提供因為該列沒有包含在聚合函式或 GROUP BY 子句中
SELECT top 10 *, 5 totalPaidTimes, logID id, sum(paidMoney) totalPaidMoney, CONVERT(varchar(100), addTime, 120) addTimeForma
SQL程式設計例項:Access資料庫,兩張表的統計,count、sum聚合函式的使用,iif的使用,group by的使用
使用工具: FineReport報表設計器,Access資料庫 需求描述: 有兩張表,訂單表和訂單明細表 1、訂單表結構: 2、訂單明細表結構: 目的:根據這兩張表做出下面的一張表 分析: 1、因為在訂單明細裡訂單ID可能出現多次,所以一定要先把訂單ID去重,否則兩張
MySQL中聚合函式count的使用和效能優化
本文的環境是Windows 10,MySQL版本是5.7.12-log 一、 基本使用 count的基本作用是有兩個: 統計某個列的資料的數量; 統計結果集的行數; 用來獲取滿足條件的資料的數量。但是其中有一些與使用中印象不同的情況,比如
聚合函式(sum,count,max,avg等)ZT
聚合函式,例如SUM, COUNT, MAX, AVG等。這些函式和其它函式的根本區別就是它們一般作用在多條記錄上。 SELECT SUM(population) FROM bbc 這裡的SUM作用在所有返回記錄的population欄位上,結果就是該查詢只返回一個結果
當case when then else end 語句遇上sum或count等統計函式(轉載)
轉載:https://blog.csdn.net/qq_18875541/article/details/69392355 事情是因為這樣了——我需要按2個維度來分組,求出按這2個維度分組的總數情況(count),但同時也需要在這2個維度下求出按不同條件得出的總數,這些不同條件下分別
Django中聚合函式,F表示式和Q表示式詳解
學習聚合函式的準備工作 新建一個專案,在新建一個app,名字隨意,然後在app中的models中定義幾個模型: from django.db import models # Create your models here. class Author(models.Model):
SQL Server資料庫————模糊查詢和聚合函式
***********模糊查詢*********/ 關鍵字: like (!!!!字串型別) in (,,) 匹配()內的某個具體值(括號裡可以寫多個值) between... and.. 在某兩個值的區間範圍中(前後都包括,小的寫前面,大的寫後面) *****
關於GROUP BY和聚合函式
轉自 http://www.cnblogs.com/wiseblog/articles/4475936.html 寫在前面的話:用了好久group by,今天早上一覺醒來,突然感覺group by好陌生,總有個筋別不過來,為什麼不能夠select * from Tabl
培訓系列16--hive 的條件語句和聚合函式
一。條件表達 case when ... then when .... then ... when ... then ...end select film_id,rpad(title,20," "),case when rating in ("G","PG","PG-13") then "YOUNG" W
mysql8基礎 聚合函式 sum 求和
資料,資料,命根就在資料 ! 操作資料庫時,一定要謹慎小心。師萬物 的程式碼看看就好,要有自己的判斷。遇到抉擇,要不恥上下問。 example stu@Ubuntu:~$ mysql -u root -p Enter password: Welcom
2018ACM-ICPC南京賽區網路賽: J. Sum(積性函式字首和)
J. Sum A square-free integer is an integer which is indivisible by any square number except 11. For example, 6 = 2 \cdot 36=2⋅3 is squa
oracle中distinct和count函式組合使用
oracle中的distinct關鍵字和count函式需要經常組合起來使用 例如,如果我們拿到一個僅有員工基本資訊的列表,我們希望得到這個公司共有多少個部門。 我們可以這樣做: select count(a.deptno) from (select distinct deptno