Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.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
Mysql 最小计数上的SQL错误代码1248_Mysql_Sql - Fatal编程技术网

Mysql 最小计数上的SQL错误代码1248

Mysql 最小计数上的SQL错误代码1248,mysql,sql,Mysql,Sql,在MySQL数据库中,我有一个名为“customer”的表。任务是列出客户数最少的州的名称,而不显示没有(零)客户的州 这是我的命令: SELECT MIN(mycount) (SELECT state,COUNT(customerNumber) mycount FROM customers WHERE state IS NOT NULL GROUP BY customers.state HAVING COUNT(customerNumber) > 0); 但是它给出了一个#12

在MySQL数据库中,我有一个名为“customer”的表。任务是列出客户数最少的州的名称,而不显示没有(零)客户的州

这是我的命令:

SELECT MIN(mycount)  
(SELECT
  state,COUNT(customerNumber) mycount
FROM customers
WHERE state IS NOT NULL
GROUP BY customers.state
HAVING COUNT(customerNumber) > 0);

但是它给出了一个
#1248错误-每个派生表都必须有自己的别名

您在子句中缺少了一个
。此外,正如错误所说,您必须为派生表指定别名(
t
,如下所示)。它也可以是其他任何东西)


如果您想要客户最少的州,那么查询应该如下所示

select state
from customers
group by state
having count(*) = (select min(cnt)
                   from (select count(*) from customers group by state) s
                  );
如果还需要计数,可以将
count(*)
添加到外部
select

select state
from customers
group by state
having count(*) = (select min(cnt)
                   from (select count(*) from customers group by state) s
                  );