Oracle SQL 字段不同值统计与连接查询
可以使用 CASE 语句进行条件判断,然后使用 SUM 函数进行统计。例如:
SELECT t1.id, t1.name,
SUM(CASE WHEN t2.value = 'A' THEN 1 ELSE 0 END) AS count_A,
SUM(CASE WHEN t2.value = 'B' THEN 1 ELSE 0 END) AS count_B,
SUM(CASE WHEN t2.value = 'C' THEN 1 ELSE 0 END) AS count_C
FROM table1 t1
LEFT JOIN table2 t2 ON t1.id = t2.id
GROUP BY t1.id, t1.name
这个查询会统计 table2 中 value 为 'A'、'B'、'C' 的行数,并将结果与 table1 做连接查询,最终输出每个 id 和 name 对应的三个值的统计结果。
原文地址: https://www.cveoy.top/t/topic/miBr 著作权归作者所有。请勿转载和采集!