Employees
桌子姓名。 | 新的。 |
---|---|
沙达布。 | 是的 |
但。 | 不 |
沙达布。 | 是的 |
姓名。 | 新的(是)。 | 新品(否) |
---|---|---|
沙达布。 | 2. | 0 |
但。 | . | 1 |
如何从Employees
表中得到这个结果?使用 MySQL。
算了算Yes
和No
中New
柱。
SELECT DISTINCT
a.name,
coalesce(yes.numbers, 0),
coalesce(no.numbers, 0)
FROM employees AS a
LEFT JOIN (SELECT name, count(name) AS numbers FROM employees WHERE new = 'Yes' GROUP BY name) AS yes ON (a.name = yes.name)
LEFT JOIN (SELECT name, count(name) AS numbers FROM employees WHERE new = 'No' GROUP BY name) AS no ON (a.name = no.name)
或使用 SUM 和 IF:
SELECT
name,
SUM(IF(new = 'Yes', 1, 0)) as yes_num,
SUM(IF(new = 'No', 1, 0)) as no_num
FROM employees
GROUP BY name
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句