我正在尝试获取存储在MySQL 5.x数据库中的可用文章的统计数据。
我正在寻找的信息是:
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语句中完成吗?
答案 0 :(得分:1)
您可以使用最小和最大:
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
中,您需要包括所有不使用聚合函数的列