我正在尝试获取存储在 MySQL 5.x 数据库中的可用文章的统计数据。
我要查找的信息是:
- 每个article_id有多少件商品
- 每篇文章 ID 的最低、最高价格 (
cl.price
) 是多少
第一个很简单:
SELECT
cw.article_id, -- unique identifier
cl.title,
count(cw.article_id) AS c -- how many items per article id availble?
FROM
`articles` a
INNER JOIN classifieds_watches cw ON a.article_id = cw.article_id
INNER JOIN classifieds cl ON cw.cl_id = cl.ID
WHERE 1
GROUP BY
cw.article_id
ORDER BY
c DESC
但是如何获取定价信息呢?这可以在一条 MySQL 语句中完成吗?
最佳答案
您可以使用最小值和最大值:
SELECT
cw.article_id, -- unique identifier
cl.title,
count(cw.article_id) AS c -- how many items per article id availble?
min(cl.price) as minimum,
max(cl.price) as maximum
FROM `articles` a
INNER JOIN classifieds_watches cw ON a.article_id = cw.article_id
INNER JOIN classifieds cl ON cw.cl_id = cl.ID
GROUP BY cw.article_id,cl.title
ORDER BY c DESC
不需要WHERE 1
,因为它始终为TRUE
。在 GROUP BY
中,您需要包含所有不使用聚合函数的列
关于mysql - 如何使用 MySQL 获取每篇文章的最低/最高价格统计信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55990824/