在线等,SQL查询 统计的问题 解决立即给分
1,将数据表 zcjs 中所有 class_id 相同的 记录的总数 分别 统计出来
2,将数据表 zcjs 中所有 class_id 相同的并且是当日的 记录的总数 分别 统计出来
说明:zcjs 中有如下 字段 id, class_id, text, date
其中classid 是不同的栏目,想利用查询实现对每个栏目的发文数做个统计!
请帮我写出 如果写出 SQL 语句
比如 sql= "select count(id) as zs from jcjs " 这样就把 表里的所有记录 统计出来并 给了 变量 zs
------解决方案--------------------sql= "select count(*) as zs from jcjs group by class_id "
sql= "select count(*) as zs from jcjs where date=# " & date & "# group by class_id "
------解决方案--------------------1,将数据表 zcjs 中所有 class_id 相同的 记录的总数 分别 统计出来
SELECT COUNT(class_id) AS zs
FROM zcjs
GROUP BY class_id
------解决方案--------------------1,将数据表 zcjs 中所有 class_id 相同的 记录的总数 分别 统计出来
SELECT class_id, COUNT(class_id) AS zs
FROM zcjs
GROUP BY class_id
------解决方案--------------------2,将数据表 zcjs 中所有 class_id 相同的并且是当日的 记录的总数 分别 统计出来
SELECT class_id, COUNT(class_id) AS zs
FROM zcjs
GROUP BY class_id, [date]
------解决方案--------------------1,将数据表 zcjs 中所有 class_id 相同的 记录的总数 分别 统计出来
--------------------------
sql= "select count(*) as zs from zcjs group by class_id "
--------------------------
2,将数据表 zcjs 中所有 class_id 相同的并且是当日的记录的总数分别统计出来
------------------------------------------
sql= "select count(*) as zs from zcjs where datediff(d,date,getdate())=0 group by class_id "
------------------------------------------
------解决方案--------------------2,将数据表 zcjs 中所有 class_id 相同的并且是当日的 记录的总数 分别 统计出来(这样写比较清楚)
SELECT [date], class_id, COUNT(class_id) AS zs
FROM zcjs
GROUP BY class_id, [date]
------解决方案----------------------建立测试数据
declare @t table(id int,class_id int,text varchar(100),date datetime)
insert into @t select 1,1, '中 ', '2007-01-05 20:14:59 '
insert into @t select 2,1, '国 ', '2007-01-05 08:14:59 '
insert into @t select 3,2, '人 ', '2007-02-06 13:08:59 '
insert into @t select 4,2, '民 ', '2007-04-05 20:14:59 '
insert into @t select 5,3, '共 ', '2007-01-05 11:14:59 '
insert into @t select 6,3, '和 ', '2007-01-05 07:14:59 '
insert into @t select 7,3, '国 ', '2007-01-05 15:14:59 '
--第一个查询
select count(*) zs from @t group by class_id
--第二个查询
select count(*) zs from @t where datediff(d,date, '2007-01-05 ')=0 group by class_id
--结果
zs
------
2
2
3
---
zs
---
2
3