当前位置:首页 » 编程语言 » sql字段数量

sql字段数量

发布时间: 2022-03-01 13:46:12

sql查询字段数量

select COUNT(a.name) from sys.all_columns a,sys.tables b
where a.object_id=b.object_id and b.name='table_name'

❷ sql如何进行多个字段的统计个数

一种查询SQL如下, 利用union获得b和c各自的统计结果, 然后再一次统计整合到最终结果:

selectsum(d.b_cnt)+sum(d.c_cnt)astotal_cnt,sum(d.b_cnt)asb_cnt,casewhensum(d.b_cnt)=0then''elsed.valendasb_label,sum(d.c_cnt)asc_cnt,casewhensum(d.c_cnt)=0then''elsed.valendasc_labelfrom(selectbasval,count(b)asb_cnt,0asc_,0,count(c)asc_cntfromAgroupbyc)dgroupbyd.val

SQLSerer上的测试结果(栏位次序有变化),

total_cnt为总数, b_label为b栏值, b_cnt为b栏个数, c_labe为c栏值, c_cnt为c栏个数.

这个结果跟字段是否为整型无关, 它是统计记录出现的次数.

❸ 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统计多个字段值数量

分两步实现
1.
按月汇总
2.
行列转换
请试一下,如有疑问,及时沟通!
3.
----生成相应的技巧性文章
create table #maomao365
(
[姓名] nvarchar(30),
[班级] nvarchar(20),
[分数] int,
[考试时间] date
)
go
insert into #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 @sql varchar(max)
set @sql =' select * from
(select [班级],
[分数],month([考试时间]) as month from #maomao365) as d
pivot(sum([分数]) for [month]
in(
';
/*动态组合列名*/
declare @lieMing varchar(7000) ---定义动态生成列名存放变量
declare @i int ,@imax int,@field varchar(60) ---定义临时循环变量
declare @fieldList table(keyId int identity,field varchar(60)) ---定义临时表,存放待生成动态列名的数据
insert into @fieldList(field) select distinct month([考试时间]) from #maomao365 ---生成列名数据
-------------循环表生成列名start--------------
set @lieMing =''
set @i=1
select @imax =max(keyId) from @fieldList t
while @i <@imax
begin
select @field =field from @fieldList t where t.keyId=@i
if isnull(@field,'') !=''
begin
if @lieMing !='' begin set @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
truncate table #maomao365
drop table #maomao365
go

❺ SQL 统计数量

--表A和表B分开来统计,最后合并两个统计结果
时间在一个范围内用 时间A between '时间1' and '时间2'
由于不是很明白你的分组统计原则,所以group by语句暂时无法提供建议

❻ sql 如何查询字段的个数

set rs=server.createobject("adodb.recordset")sql="select * from 表名"rs.open sql,conn,1,1'开始赋值FieldCount=rs.fields.count

❼ sql中怎么统计一个字段的数量

sqlserver为例
创建表及插入数据
create table 姓名表(id int,u_name varchar(10),subject varchar(10))create table 科目表(id int,s_name varchar(10))insert into 姓名表 values (1,'张三','英语')insert into 姓名表 values (2,'李四','德语')insert into 姓名表 values (3,'王五','日语')insert into 姓名表 values (4,'小明','英语')insert into 姓名表 values (5,'小狗','法语')insert into 科目表 values (1,'英语')insert into 科目表 values(2,'德语')insert into 科目表 values(3,'日语')insert into 科目表 values(4,'法语')
然后需要创建一个视图
create view v_subjectasselect a.s_name,SUM(case when a.s_name=b.subject then 1 else 0 end) countsfrom 科目表 a left join 姓名表 b on a.s_name=b.subjectgroup by a.s_name执行语句
declare @sql varchar(4000)set @sql = 'select sum(counts) as 合计'select @sql = @sql + ',sum(isnull(case [s_name] when '''+[s_name]+''' then [counts] end,0)) as ['+[s_name]+']'from (select distinct [s_name] from v_subject) as aselect @sql = @sql+' from [v_subject]'exec (@sql)结果截图

你结果里为什么会少呢?
这个主要是动态显示才这么复杂,比如你在科目表里再加个阿拉伯语,用这个也没问题,否则用case when的写法会比较有局限性

❽ sql 查询某一字段值的个数

select字段1,count(字段2)个数
fromtabname
groupby字段1

❾ 如何计算SQL其中一个字段的数据个数

select count(*) from table where 某字段='内容'

以上,希望对你有所帮助

❿ sql语句统计数量 统计一个字段出现的数量

1、创建测试表,

create table test_stu(id number, u_name varchar2(20), subject varchar2(20));

create table test_subj(id number, subject varchar2(20));

热点内容
物资数据库 发布:2025-01-11 21:00:24 浏览:853
javastop 发布:2025-01-11 21:00:20 浏览:30
机械手臂用什么编程 发布:2025-01-11 20:55:32 浏览:591
买钓箱要哪些配置就够了 发布:2025-01-11 20:24:23 浏览:510
防脚本取色 发布:2025-01-11 20:15:17 浏览:638
为什么庄周活动安卓没开始 发布:2025-01-11 20:14:23 浏览:461
我的世界花雨庭国际服服务器地址 发布:2025-01-11 20:13:27 浏览:719
c数据导入数据库 发布:2025-01-11 20:07:55 浏览:829
可以上传片 发布:2025-01-11 20:07:55 浏览:793
outlook服务器邮件怎么找 发布:2025-01-11 20:06:12 浏览:96