sql 统计每个类型有多少数量,类型包含 某字符为同?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 统计每个类型有多少数量,类型包含 某字符为同?相关的知识,希望对你有一定的参考价值。

其他1-1
其他1-1
其他1-1
其他1-1
其他1-1
其他1-1
其他1-1
板材(补)1-1
门框3-1
门扇3-2
门扇3-3
门框3-1
门扇3-2
门扇3-3
门框5-1
门扇5-2
门扇5-3
板材5-4

字段如上

统计
类型 数量
板材
门框
门扇
配件
其他

参考技术A table_A :需统计的表
typy:类型字段
num:数量
1:如果数据整齐,可以用
select substring(type, 0, 2) as typy, sum(num) as sum from table_A grop by typy order by sum;
2:如果数据不整齐,可以建一张类型表。
表 table_B
type_b
板材
门框
门扇
配件
SELECT b.type_b, sum(a.num) as sum from table_B b right join table_A a on a.type_name like '%'+b.type_b+'%' group by b.type_b
至于其他的类型 则需要单独处理。没有规定列。
可以单独用一条sql 查出总数,然后和之前统计出的和 做差值。

注:以上未实测 提供个思路 希望对你有用追问

我单个统计 可以  不知道怎么合并到一张表,没有sum字段的 统计他出现次数

表名:IMSN

字段:SNName

本回答被提问者和网友采纳
参考技术B select count(*),列名 from table group by 列名 参考技术C select case when left(a.类型,2) like '%板材%' then '板材'

when left(a.类型,2) like '%门框%' then '门框'

when left(a.类型,2) like '%门扇%' then '门扇'

when left(a.类型,2) like '%配件%' then '配件'

when left(a.类型,2) like '%其他%' then '其他' end as 类型
,
case when left(a.类型,2) like '%板材%' then count(1)

when left(a.类型,2) like '%门框%' then count(1)

when left(a.类型,2) like '%门扇%' then count(1)

when left(a.类型,2) like '%配件%' then count(1)

when left(a.类型,2) like '%其他%' then count(1) end as 数量

from table a
where 1=1
group by left(a.类型,2)

英文词频统计预备,组合数据类型练习

  1. 实例: 下载一首英文的歌词或文章,将所有,.?!等替换为空格,将所有大写转换为小写,统计某几个单词出现的次数,分隔出一个一个的单词。
  2. 列表实例:由字符串创建一个作业评分列表,做增删改查询统计遍历操作。例如,查询第一个3分的下标,统计1分的同学有多少个,3分的同学有多少个等。
  3. 简要描述列表与元组的异同。
  4. 答:元组通常由不同的数据,而列表是相同类型的数据队列。列表是以方括号[]包围的数据集合。而元组是用小括号()。

以上是关于sql 统计每个类型有多少数量,类型包含 某字符为同?的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL下统计一个字段中出现字符串的种类和个数

英文词频统计预备,组合数据类型练习

英文词频统计预备,组合数据类型练习

英文词频统计预备,组合数据类型练习

英文词频统计预备,组合数据类型练习

SQL中nvarchar类型的默认长度是多少?