Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用别名和计数创建SQL查询_Sql_Postgresql - Fatal编程技术网

使用别名和计数创建SQL查询

使用别名和计数创建SQL查询,sql,postgresql,Sql,Postgresql,请帮助我使用别名和计数创建查询。我只有一个表,其中包含了所有必要的信息,但由于我必须使用COUNT来获得最终结果中包含的人数,不幸的是,据我所知,我不得不使用别名 我有公司、城市和在这些公司工作的人。 因此,我必须有在每个城市的每个公司工作的人数。 最初我试过这样做: SELECT COUNT (employee_name) FROM (SELECT company_city_name, company_name FROM mytable) 这里我得到一个错误,说我必须使用别名 我还尝试将“从

请帮助我使用别名和计数创建查询。我只有一个表,其中包含了所有必要的信息,但由于我必须使用COUNT来获得最终结果中包含的人数,不幸的是,据我所知,我不得不使用别名

我有公司、城市和在这些公司工作的人。 因此,我必须有在每个城市的每个公司工作的人数。 最初我试过这样做:

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;