求一个SQL语句,关于统计用户反馈信息的。

indusl 2011-08-22 06:50:10
有两个表 一个是信息分类表,一个是用户反馈信息表。

其中信息分类表有个分类是投诉类,还有其他分类,跟此无关不累述。

而公司呢有很多实体店,“用户反馈信息表”里有个字段是店的名字。还有一个字段是 此投诉是否为有效投诉。


现在两个表联合,要求得出每个店的有效投诉类的信息和所有信息数量的的比(注意不是和所有投诉类的信息量的比)。 如何写?

...全文
195 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
CosmoKey 2011-08-23
  • 打赏
  • 举报
回复
DECLARE @All int
select @All = count(1) from 反馈表
join 信息分类表
on 信息分类表.CategoryID = 反馈表.CategoryID
where IsReal=有效 and CategoryID = 投诉类

select 商店名, count(1),count(1) / @All from 反馈表
join 信息分类表
on 信息分类表.CategoryID = 反馈表.CategoryID
where IsReal=有效 and CategoryID = 投诉类
group by 商店名
  • 打赏
  • 举报
回复
说的挺复杂的,不太明白意思

·有些复杂的不要硬用sql做到,借助代码会更清楚些


create table feedback
(
id INT IDENTITY(1,1) primary key not null,
shopName varchar(50) null,
isValid tinyint default(0),
classID INT NOT null
)
go


CREATE TABLE class(id INT IDENTITY(1,1) primary NULLnot null,className VARCHAR(50) NULL)
GO
INSERT INTO class SELECT '投诉类'

INSERT INTO feedback SELECT 'shop1',1,1
INSERT INTO feedback SELECT 'shop1',0,1
INSERT INTO feedback SELECT 'shop1',1,1
INSERT INTO feedback SELECT 'shop2',1,1
INSERT INTO feedback SELECT 'shop1',1,1
INSERT INTO feedback SELECT 'shop2',1,1
INSERT INTO feedback SELECT 'shop2',1,1
INSERT INTO feedback SELECT 'shop1',1,1
INSERT INTO feedback SELECT 'shop3',1,1
INSERT INTO feedback SELECT 'shop1',0,1
INSERT INTO feedback SELECT 'shop2',1,1
INSERT INTO feedback SELECT 'shop3',1,1
SELECT shopname,比例=(COUNT(1)/(SELECT CAST(COUNT(1) AS FLOAT) FROM feedback WHERE shopName=o.shopName)) FROM feedback AS o WHERE isvalid=1 AND classID=(SELECT classid FROM class WHERE classname='投诉类') GROUP BY shopname
indusl 2011-08-23
  • 打赏
  • 举报
回复
顶~~ 能用一条select搜索到吗
indusl 2011-08-23
  • 打赏
  • 举报
回复
顶~~ 能用一条select搜索到吗
indusl 2011-08-22
  • 打赏
  • 举报
回复
ddddddddddddd
indusl 2011-08-22
  • 打赏
  • 举报
回复
有两个表 一个是信息分类表,一个是用户反馈信息表。 (两者通过 CategoryID 主外键关联,很常用的手法)

其中“信息分类表”有个分类是投诉类,还有其他分类,跟此无关不累述。

而公司呢有很多实体店,“用户反馈信息表”里有个字段是店的名字。有一个CategoryID表明信息的分类ID,还有一个字段是 IsReal 表明此投诉是否为有效投诉。


现在两个表联合,要求得出每个店的有效投诉类的信息数量和所有信息数量的比(注意不是和所有投诉类的信息量的比)。 如何写?

62,254

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧