sql統計個數
『壹』 sql語句統計查詢結果數量怎麼寫
可以通過count函數來實現。
sqlOne:select * from tablename1 where id>5;此語句查詢出來多條記錄,之後看做一個新的表。
sqlTwo:select conut(*) from (select * from tablename1 where id>5) as tablename2;此語句即可查詢出來統計的記錄條數。
備註:以上方法通用於所有的數據統計,如果是單表查詢,可以直接通過:「select count( *) from tablename1 where id>5"的形式查詢出結果。
『貳』 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,對應的列可能也有不同,看你的情況改吧。
『肆』 sql語句統計數量 統計一個欄位出現的數量
1、創建測試表,
create table test_stu(id number, u_name varchar2(20), subject varchar2(20));
create table test_subj(id number, subject varchar2(20));
『伍』 sql 統計數量
select 學生表.學號, 選課數 into 選課數統計表 from 學生表 left join (select 學號, count(*) as 選課數 from 學生選課表 group by 學號) tmbdb on 學生表.學號=tmpdb.學號
『陸』 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統計多個欄位值數量
分兩步實現
按月匯總
行列轉換
請試一下,如有疑問,及時溝通!
----生成相應的技巧性文章
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語句暫時無法提供建議