【发布时间】:2015-01-04 14:16:18
【问题描述】:
所以,我想获得产品评级并应用它来获得 TOP PRODUCTS。
CREATE PROCEDURE [dbo].[TopProducts]
AS
BEGIN
SELECT Prod_Name, Qty, ProductImage, Price, Store_Name
FROM Product P, Store S
WHERE ....
在我的产品表中,你可以找到这个:
(
Prod_ID int not null IDENTITY(1,1),
Store_ID int not null,
Price int not null ,
Prod_Name varchar(50) not null,
Qty int not null,
ProductDescription varchar(50),
RatingSum int not null,
RatingCount int not null,
ProductImage varchar(50),
Prod_Date date,
PRIMARY KEY (Prod_ID),
FOREIGN KEY (Store_ID) REFERENCES Store(Store_ID)
);
所以,我想输入“WHERE”条件,例如:(RatingSum/RatingCount) >= 4 ...。
我该怎么做?
编辑: 以免混淆! 评分总和,将是一个整数,其中来自评论者的所有评分将相互添加,评分计数是每次用户评论该特定产品(此 Prod_ID)时递增的东西,在此之后,评分就是你得到的从除以这个!
有没有更好的方法来获得多个评论者对特定产品的平均评分?
【问题讨论】:
-
“RatingSum/RatingCount”是什么意思?是否要检查两个列的值?
-
我想要评分,所以我收集了整个评分总和,比如说 (3,3,4,5),然后除以这里的计数 (4)。要获得平均值,显然:D
-
@user3054349 。 . .我不明白。
RatingSum和RatingCount一样是一列,所以你的问题是关于简单除法的。如果您有其他想法,您应该编辑您的问题并包含示例数据和所需的结果。 -
评分总和,将是一个整数,其中来自评论者的所有评分将相互叠加,评分计数是每次用户评论该特定产品(此 Prod_ID)时增加的东西,之后这个,评分就是你从这个除以那个得到的!
-
这是一个简单的
WHERE条件。您是否尝试过您在问题中发布的内容?
标签: sql-server database where-clause