Php 字段中每个值的MYSQL计数
我有一个数据库,其下表“响应”带有id和美国州:Php 字段中每个值的MYSQL计数,php,mysql,sql,Php,Mysql,Sql,我有一个数据库,其下表“响应”带有id和美国州: *id *state 1 CA 2 NY 3 NY 4 CO 5 DE 我正在使用PHP输出美国50个州的行总数 因此,我的输出看起来像: CA:1 纽约:2 CO:1 DE:1 等等…… 我知道我可以运行50个这样的查询: SELECT * FROM `responses` WHERE state='CA' 我的问题是:有没有更有效的方法来处理这个问题,或者我需要运行50个查询?使用GROU
*id *state
1 CA
2 NY
3 NY
4 CO
5 DE
我正在使用PHP输出美国50个州的行总数
因此,我的输出看起来像:CA:1
纽约:2
CO:1
DE:1
等等……
我知道我可以运行50个这样的查询:
SELECT *
FROM `responses`
WHERE state='CA'
我的问题是:有没有更有效的方法来处理这个问题,或者我需要运行50个查询?使用
GROUP BY
子句:
SELECT state, COUNT(*) FROM `responses` GROUP BY state;
关于使用GROUP BY有多种方法,它是SQL最有用、最强大的功能之一。使用
GROUP BY
子句:
SELECT state, COUNT(*) FROM `responses` GROUP BY state;
使用GROUP BY有多种方法,这是SQL最有用、最强大的功能之一。您可以使用MySQL子句,它将按照状态对所有结果进行分组:
SELECT
state, COUNT(*) AS count
FROM
`responses`
GROUP BY
state;
您可以使用MySQL的子句,它将按照状态对所有结果进行分组:
SELECT
state, COUNT(*) AS count
FROM
`responses`
GROUP BY
state;
选择state,count(state)from responses GROUP BY state另外,请注意,使用这些聚合函数和GROUP BY子句,您的表结果集将包含数字(count),因此您不需要在PHP端计算运行总数或行数。只需从表中读取。SELECT state,count(state)from responses GROUP BY state另外,请注意,使用这些聚合函数和GROUP BY子句,您的表结果集将包含数字(count),因此您不需要在PHP端计算运行总数或行数。从桌子上读,太好了。谢谢你的快速回复。太好了。谢谢你的快速回复。