MySQL --- 聚合查询 和 联合查询
在MySQL中,聚合查询通常使用GROUP BY
子句和聚合函数如SUM()
, AVG()
, MAX()
, MIN()
, COUNT()
等。而联合查询通常是通过JOIN
子句实现的,可以是INNER JOIN
, LEFT JOIN
, RIGHT JOIN
, 或 CROSS JOIN
。
聚合查询示例
假设有一个名为sales
的表,包含了product_id
和quantity
列,以下是一个计算每个产品销售总数的聚合查询:
SELECT product_id, SUM(quantity) as total_quantity
FROM sales
GROUP BY product_id;
联合查询示例
假设有两个表:employees
(员工表)和departments
(部门表),需要查询员工及其所在部门的名称。
SELECT employees.name, departments.name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;
在这个例子中,INNER JOIN
用于只选择两个表中匹配的记录。如果你想要包括没有匹配的employees
记录,可以使用LEFT JOIN
;相反,如果你想要包括没有匹配的departments
记录,可以使用RIGHT JOIN
。
评论已关闭