使用别名和计数创建SQL查询
请帮助我使用别名和计数创建查询。我只有一个表,其中包含了所有必要的信息,但由于我必须使用COUNT来获得最终结果中包含的人数,不幸的是,据我所知,我不得不使用别名 我有公司、城市和在这些公司工作的人。 因此,我必须有在每个城市的每个公司工作的人数。 最初我试过这样做:使用别名和计数创建SQL查询,sql,postgresql,Sql,Postgresql,请帮助我使用别名和计数创建查询。我只有一个表,其中包含了所有必要的信息,但由于我必须使用COUNT来获得最终结果中包含的人数,不幸的是,据我所知,我不得不使用别名 我有公司、城市和在这些公司工作的人。 因此,我必须有在每个城市的每个公司工作的人数。 最初我试过这样做: SELECT COUNT (employee_name) FROM (SELECT company_city_name, company_name FROM mytable) 这里我得到一个错误,说我必须使用别名 我还尝试将“从
SELECT COUNT (employee_name) FROM (SELECT company_city_name, company_name FROM mytable)
这里我得到一个错误,说我必须使用别名
我还尝试将“从mytable中选择COUNT(employee_name)”和“从mytable中选择company_city_name,company_name”(因为这两个查询是分开工作的):
不工作,出现错误。我仍然不明白为什么我不能使用它并使它工作。不管怎么说,我对化名完全感到困惑。我有这样的想法:
SELECT COUNT (employee_name)
FROM (SELECT company_city_name AS city_name, company_name AS company FROM mytable AS t1)
我哪里出了问题 对于此查询:
SELECT COUNT(employee_name)
FROM (SELECT company_city_name, company_name FROM mytable)
您指的是员工\ u姓名
,但子查询中没有姓名。此版本应适用于:
SELECT COUNT(employee_name)
FROM (SELECT company_city_name, company_name, employee_name FROM mytable) t
--------------------------------------------------------------------------^
但是我不知道你为什么想要一个子查询
为什么我认为你想要一个聚合
select company_name, company_city_name, count(*) as num_employees
from mytable
group by company_name, company_city_name;
谢谢,最后一个例子(聚合)对我很有用。所以根本不需要别名。。我从来没有想到,这样的查询是可能的,因为您实际上没有单独使用“employees”。
select company_name, company_city_name, count(*) as num_employees
from mytable
group by company_name, company_city_name;