Php 数据库中的子组

Php 数据库中的子组,php,sql,Php,Sql,在我的php项目中,我有他的表: +------+-------+--------+ DATE + NAME + COMPANY +------+-------+--------+ 3.11 john companyA 3.11 jonn companyA 3.11 george companyA 3.11 peter companyA 3.11 kim companyB 4.11 sophia companyB 5.1

在我的php项目中,我有他的表:

+------+-------+--------+
 DATE  +  NAME + COMPANY  
+------+-------+--------+
 3.11   john    companyA
 3.11   jonn    companyA
 3.11   george  companyA
 3.11   peter   companyA
 3.11   kim     companyB
 4.11   sophia  companyB
 5.11   sophia  companyB
从这张桌子上我需要

companyA = 3
companyB = 3
作为每个公司唯一名称的唯一日期的总和。
我可以使用什么功能

试试这个,也许它适合你

SELECT `COMPANY`, COUNT(*) `repeat` 
FROM   `your_table`

GROUP BY `NAME`, `COMPANY`
HAVING COUNT(*) > 0; 

您似乎想要计算前两列的不同组合。如果是这样,许多数据库支持带有多个参数的
count(distinct)

select company, count(distinct date, name)
from t
group by company;
对于不需要的数据库,通常可以使用字符串操作来伪造:

select company, count(distinct date || ':' || name)
from t
group by company;
不过,更通用的方法是使用子查询:

select company, count(*)
from (select distinct company, date, name
      from t
     ) t
group by company;

您可以使用count()和distinct函数sis
jonn
2行中的打字错误?它应该是约翰吗?同时用您使用的数据库标记问题。@MartinGallo。用您正在使用的数据库标记您的问题。