根据like查询字段content,从数据库取出一笔数据:
id content typeid typename
1 333 21 发动机
2 433 22 离合器
3 56521 21 发动机
4 9852 22 离合器
5 27512 21 发动机
6 3251 22 离合器现在要做个结果分类和统计:即:发动机(3) 离合器(3)访问者可以点击:发动机和离合器进入各自的查询结果。
id content typeid typename
1 333 21 发动机
2 433 22 离合器
3 56521 21 发动机
4 9852 22 离合器
5 27512 21 发动机
6 3251 22 离合器现在要做个结果分类和统计:即:发动机(3) 离合器(3)访问者可以点击:发动机和离合器进入各自的查询结果。
查询结果放在一个表中,
--查询前
delete temptable--查询
insert temptable select ....--统计
select typename,count(*) from temptable group by typename--进入分类
select * from temptable where typename='发动机'
select * from temptable where typename='离合器'
insert @tab values(2,'433',22,'离合器')
insert @tab values(3,'56521',21,'发动机')
insert @tab values(4,'9852',22,'离合器')
insert @tab values(5,'27512',21,'发动机')
insert @tab values(6,'3251',22,'离合器')
select typename,count(typename) from @tab group by typename
from 表
group by typename
declare @tab table(id int,content1 varchar(20),typeid int,typename varchar(20))
insert @tab values(1,'333',21,'发动机')
insert @tab values(2,'433',22,'离合器')
insert @tab values(3,'56521',21,'发动机')
insert @tab values(4,'9852',22,'离合器')
insert @tab values(5,'27512',21,'发动机')
insert @tab values(6,'3251',22,'离合器')
select distinct typename,[count]=(select count(*) from @tab where typename=a.typename)
from @tab a
结果:
typename count
-------------------- -----------
发动机 3
离合器 3(所影响的行数为 2 行)
我的调用是在前台的 不是在sql server上面弄的上面的程序都是在sql server上面的
1 333 21 发动机
2 433 22 离合器
3 56521 21 发动机
4 9852 22 离合器
5 27512 21 发动机
6 3251 22 离合器
这类似的问题,用group by 就可以实现
select typename,count(*) [count] from tableName group by typename
sql="select distinct typename,[count]=(select count(*) from tablename where typename=a.typename)
from tablename a" tablename为你的数据库中的表名。