sql統計人數
① sql統計地區人數該怎麼做
可以用GROUP BY 加CASE WHEN
SELECTCASEWHENaddress='江蘇南京'THEN'南京'ELSEaddressENDASaddressas地區,COUNT(no)人數
FROMtable
GROUPBYCASEWHENaddress='江蘇南京'THEN'南京'ELSEaddressEND
② 查詢出每個部門的人員總數,sql語句怎麼寫
sql 使用sum 與 group by
可以統計每個部門的總人數
sum統計總人數 group by根據部門分組
例子
id departmentname number
1 技術 10
2 技術 3
3 銷售 50
sql語句
select departmentname ,sum(number)number from table group by departmentname ;
結果
departmentname number
技術 13
銷售 50
③ sql語句統計各部門不同人員類別的人數
第一步,依據你上邊給的語句創建一個視圖
createviewv_dept
as
selectbd_deptdoc.deptcodeasdeptcode,
bd_deptdoc.deptlevelasdeptlevel,
bd_deptdoc.deptnameasdeptname,
bd_psndoc.psnnameaspsnname,
bd_psncl.psnclassnameaspsnclassname,
bd_psncl.psnclasscodeaspsnclasscode
frombd_psndoc
innerjoinbd_deptdoc
onbd_psndoc.pk_deptdoc=bd_deptdoc.pk_deptdoc
innerjoinbd_psncl
onbd_psndoc.pk_psncl=bd_psncl.pk_psncl
第二步,動態執行sql,由於你人員類別可能不止就3種,所以要動態執行
declare@sqlvarchar(4000)
set@sql='selectdeptcode,deptname'
select@sql=@sql+',sum(isnull(case[psnclassname]when'''+[psnclassname]+'''then1end,0))as
['+[psnclassname]+']'
from(selectdistinct[psnclassname]fromv_dept)asa
select@sql=@sql+'fromv_deptgroupbydeptcode,deptname'
exec(@sql)
④ SQL命令統計各姓氏人數
SELECT Left(表名.[姓名], 1) as 家姓,count(Left(表名.[姓名], 1)) as 人數 FROM [表名] group by Left(表名.[姓名], 1);
⑤ 統計人數SQL語句怎麼寫
insert into 表2 ([部門],[人數])select [部門],count(人數) from 表1 group by 部門
⑥ 利用sql統計「學生」表中學生的總人數
統計「學生」表中學生的總人數的sql語句是:
select count(*) from student;
其中select代表查詢,count(*)是統計行數量,student是學生表,使用上述語句可以統計學生表中的所有行記錄也就是學生的總人數。
(6)sql統計人數擴展閱讀
常用sql語句介紹:
1、 查詢指定列
SQL>SELECT empmo, ename, mgr FROM emp;
SQL>SELECT DISTINCT mgr FROM emp; 只顯示結果不同的項
2、查詢指定行
SQL>SELECT * FROM emp WHERE job='CLERK';
3、使用算術表達式
SQL>SELECT ename, sal*13+nvl(comm,0) FROM emp;
nvl(comm,1)的意思是,如果comm中有值,則nvl(comm,1)=comm; comm中無值,則nvl(comm,1)=0。
SQL>SELECT ename, sal*13+nvl(comm,0) year_sal FROM emp; (year_sal為別名,可按別名排序)
SQL>SELECT * FROM emp WHERE hiredate>'01-1月-82';
⑦ SQL查詢統計某表的男女各個人數
select s.sex,count(s.sex) from student s GROUP BY sex;
GROUP BY 語句
GROUP BY 語句用於結合合計函數,根據一個或多個列對結果集進行分組。
測試student表紀錄如下圖,根據自己需求增刪欄位。
student s ,s是自己為student表定義的別名,count()為統計的人數。
拓展資料:
SQL GROUP BY 語法:
SELECT column_name(列名), aggregate_function(column_name) (函數名) FROM table_name(表名) WHERE column_name operator value GROUP BY column_name
⑧ SQL 查詢統計每個班的學生人數
select sClass 班級,count(*) 班級學生總人數。sum(case when sGender=0 then 1 else 0 end) 該班級女生人數。sum(case when sGender=0 then 1 else 0 end)*1.0/count(*) 該班級女生所佔比例。sum(case when sGender=1 then 1 else 0 end) 該班級男生人數。sum(case when sGender=1 then 1 else 0 end)*1.0 /count(*) 該班級男生所佔比例。 from student GROUP BY sClass ORDER BY sClass asc⑨ sql 統計人數
select count(stu_id) from student where subject in{『英語』,『政治』,『數學』,『計算機』,『C語言編程'}
上述SQL語句為查詢科目為這五門課的學生總數,如果用count(*),可能沒有剔除重復記錄,所以用count(stu_id)
select subject, count(stu_id) from student where subject in{『英語』,『政治』,『數學』,『計算機』,『C語言編程'} group by subject
分別查詢上述五門科目,每門科目的學生總數,返回的是這樣的數據對(pair):(英語,50) (政治, 45)……
select distinct name from student where subject in{『英語』,『政治』,『數學』,『計算機』,『C語言編程'}
查詢選擇上述五門課的所有學生名字,必須加上關鍵詞distinct,以除去重復的名字(比如同一個學生可以同時選上述五門課)
select subject, distinct name from student where subject in {『英語』,『政治』,『數學』,『計算機』,『C語言編程'}group by subject
分別查詢上述五門科目各科的學生名字,返回結果為(科目,學該科目的學生名字)
⑩ SQL 統計人數怎麼寫,求高手指導
建表:create table student(
sno char(8) not null primary key,
sname varchar(8),
sex char(2) not null CHECK (sex in('男','女')),
age int ,
grade char(8),
deptno char(8))
統計學生總人數:select count(*) from student;
將學生張三從編號001系轉為002系:update student set deptno="002" where sname="張三";