在mySQL select语句中查找正确的计数语法

时间:2017-01-04 01:47:52

标签: php mysql count left-join

目标: 要有一个SIC代码表及其描述(通过另一个表连接)并计算所使用的每个DISTINCT SIC代码的实例数。理想的结果如下......后面是当前的mySQL select语句:

SIC Code | Description | Count of SIC Code
0001     | Desc A      | 10               
0002     | Desc B      | 50               
000N     | Desc N      | 80

当前SQL语句,但导致错误通知:

$sql = "SELECT DISTINCT company_list.SIC_Codes, sic_codes.SIC_desc, COUNT(*) as sicCount, FROM company_list LEFT JOIN sic_codes ON company_list.SIC_Codes = sic_codes.SIC_code;";

用于获取上述示例的count语法的任何想法或观点?

谢谢。

1 个答案:

答案 0 :(得分:0)

尝试为这样的COUNT做一个子查询。

$sql = "SELECT DISTINCT company_list.SIC_Codes, sic_codes.SIC_desc, (SELECT COUNT(*) FROM company_list LEFT JOIN sic_codes ON company_list.SIC_Codes = sic_codes.SIC_code) as sicCount, FROM company_list LEFT JOIN sic_codes ON company_list.SIC_Codes = sic_codes.SIC_code";

不要将COUNT作为字段,而是尝试为它创建子查询。
COUNT(*)更改为(SELECT COUNT(*) FROM company_list LEFT JOIN sic_codes ON company_list.SIC_Codes = sic_codes.SIC_code)