这样的事情是否可能发生:
SELECT DISTINCT COUNT(productId) WHERE keyword='$keyword'
我想要的是得到与关键字相关联的唯一产品 ID 的数量。同一个产品可能与一个关键字关联两次,或更多,但我希望只有1次计数每个产品 ID
你们很亲密: -)
select count(distinct productId) from table_name where keyword='$keyword'
使用
SELECT COUNT(DISTINCT productId) from table_name WHERE keyword='$keyword'
有一群人在旁边不是更好吗? 比如:
SELECT COUNT(*) FROM t1 GROUP BY keywork;
我会这样做:
Select count(*), productid from products where keyword = '$keyword' group by productid
会给你一个列表,比如
count(*) productid ---------------------- 5 12345 3 93884 9 93493
这允许您查看每个不同的 productid ID 中有多少与关键字相关联。
顺便说一句,这个可能更快,
SELECT count(1) FROM (SELECT distinct productId WHERE keyword = '$keyword') temp
比这个,
SELECT COUNT(DISTINCT productId) WHERE keyword='$keyword'
这到底是什么工作,花药
太简单了
如果你想要一个每个关键字中有多少 productId 的列表,这里是代码
SELECT count(productId), keyword FROM `Table_name` GROUP BY keyword;
对于这类问题的另一个答案,这是我根据产品名称计算产品数量的另一个答案,如下例所示:
表值
select * FROM Product
已计算产品名称
SELECT DISTINCT(Product_Name), (SELECT COUNT(Product_Name) from Product WHERE Product_Name = Prod.Product_Name) as `Product_Count` from Product as Prod
记录数: 4; 执行时间: 2毫秒