當前位置:首頁 » 編程語言 » sql統計數量

sql統計數量

發布時間: 2022-02-06 19:46:21

『壹』 sql統計多個欄位值數量

分兩步實現

  1. 按月匯總

  2. 行列轉換

    請試一下,如有疑問,及時溝通!

  3. ----生成相應的技巧性文章
    createtable#maomao365
    (
    [姓名]nvarchar(30),
    [班級]nvarchar(20),
    [分數]int,
    [考試時間]date
    )
    go

    insertinto#maomao365(
    [姓名],[班級],
    [分數],[考試時間]
    )values
    ('張三','一班',89,'2019-1-1'),
    ('李四','二班',100,'2019-1-1'),
    ('王二','三班',60,'2019-1-1'),
    ('馬子','四班',70,'2019-1-1'),
    ('maomao','一班',89,'2019-1-1'),
    ('小屋','二班',15,'2019-2-1'),
    ('sql','三班',69,'2019-2-1'),
    ('教程','四班',72,'2019-2-1'),
    ('宇宙','一班',63,'2019-3-1'),
    ('周貓貓','一班',50,'2019-4-1'),
    ('宙斯盾','二班',23,'2019-5-1'),
    ('潛水艇','三班',21,'2019-6-1'),
    ('其它','四班',20,'2019-7-1')
    go
    /*拼接字元串*/
    declare@sqlvarchar(max)
    set@sql='select*from
    (select[班級],
    [分數],month([考試時間])asmonthfrom#maomao365)asd
    pivot(sum([分數])for[month]
    in(
    ';/*動態組合列名*/
    declare@lieMingvarchar(7000)---定義動態生成列名存放變數
    declare@iint,@imaxint,@fieldvarchar(60)---定義臨時循環變數
    declare@fieldListtable(keyIdintidentity,fieldvarchar(60))---定義臨時表,存放待生成動態列名的數據
    insertinto@fieldList(field)selectdistinctmonth([考試時間])from#maomao365---生成列名數據

    -------------循環表生成列名start--------------
    set@lieMing=''
    set@i=1
    select@imax=max(keyId)from@fieldListt
    while@i<@imax
    begin
    select@[email protected]=@i
    ifisnull(@field,'')!=''
    begin
    if@lieMing!=''beginset@lieMing=@lieMing+','end
    set@lieMing=@lieMing+'['+@field+']';
    end
    set@i=@i+1
    end
    -------------循環表生成列名end--------------
    /*動態組合列*/

    set@sql=@sql+@lieMing+'))t;';---拼接sql語句

    print(@sql)

    exec(@sql)


    go
    truncatetable#maomao365
    droptable#maomao365
    go

『貳』 Sql統計數量

select
學號,
count(1)
as
學生選課數
from
學生選課表
group
by
學號
一張表足以,根本不需要學生表,除非要顯示學生姓名。
count函數是計算按照學號分組之後的行數,也就是一行是選了一門。
放到一張表裡,如果是建好的表,那麼
insert
into

select
學號,
count(1)
as
學生選課數
from
學生選課表
group
by
學號

『叄』 SQL 統計數量

--表A和表B分開來統計,最後合並兩個統計結果
時間在一個范圍內用 時間A between '時間1' and '時間2'
由於不是很明白你的分組統計原則,所以group by語句暫時無法提供建議

『肆』 SQL怎麼統計個數

方法一:

SELECT SUM(正確數)+SUM(錯誤數) AS 總記錄數,SUM(正確數),SUM(錯誤數)
FROM (
SELECT COUNT(1) 正確數,0 錯誤數
FROM TB
WHERE STATUS=1
UNION ALL
SELECT 0 正確數,COUNT(1) 錯誤數
FROM TB
WHERE STATUS=0) a

方法二:

select count(1)總記錄數,sum(case when status=1 then 1 else 0 end)正確數,sum(case when status=0 then 1 else 0 end) 錯誤數 from T

『伍』 sql語句統計數量,統計一個欄位的值的數量

select type,count(*) as 總數量,
sum(case when level='一級' then 1 else 0 end) as 一級,
sum(case when level='二級' then 1 else 0 end) as 二級,
sum(case when level='三級' then 1 else 0 end) as 三級
from table group by type

樓上的應該改改吧

『陸』 sql統計數量

select 部門名稱,count(id) as '員工人數 ' from A inner join B on B.a_id=A.id

『柒』 SQL怎麼統計個數

不同資料庫的系統表可能不一樣,比如informix就是systables

tabname。
informix資料庫:
統計個數:
select
count(*)
from
systables
where
tabname
like
'%abc%'
查看錶:
select
tabname
from
systables
where
tabname
like
'%abc%'
其他資料庫的話,系統表可能是sysobjects,對應的列可能也有不同,看你的情況改吧。

熱點內容
魔獸和聯盟哪個對電腦配置要求高 發布:2024-12-28 02:43:26 瀏覽:78
屏保視頻怎麼設置密碼 發布:2024-12-28 02:33:12 瀏覽:74
movies文件夾 發布:2024-12-28 02:33:07 瀏覽:786
艾力紳怎麼跟安卓手機車機互聯 發布:2024-12-28 02:27:29 瀏覽:296
主備伺服器ip 發布:2024-12-28 02:27:28 瀏覽:476
如何打開u盤文件夾 發布:2024-12-28 02:23:43 瀏覽:782
pascal有哪些編譯器 發布:2024-12-28 02:16:45 瀏覽:98
雲存儲錄像機 發布:2024-12-28 02:16:36 瀏覽:206
hp伺服器如何裝系統 發布:2024-12-28 02:12:14 瀏覽:156
python3utf8 發布:2024-12-28 02:12:07 瀏覽:642