Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.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 如何根据不同的ID从同一个表中获取公共记录?_Mysql_Sql - Fatal编程技术网

Mysql 如何根据不同的ID从同一个表中获取公共记录?

Mysql 如何根据不同的ID从同一个表中获取公共记录?,mysql,sql,Mysql,Sql,我的数据库中有一个mysql表,如下所示 company_id | bill_month | 134 |Apr 134 |May 134 |Jun 134 |Jul 134 |Aug2k19 134 |Sep2k19 391 |Aug2k19 391 |Sep2k19 现在我想要的是获取所有公司共有的月份,我想要的结果如下所示 bill_months| Aug2

我的数据库中有一个mysql表,如下所示

 company_id | bill_month |
 134        |Apr
 134        |May
 134        |Jun
 134        |Jul
 134        |Aug2k19
 134        |Sep2k19
 391        |Aug2k19
 391        |Sep2k19
现在我想要的是获取所有公司共有的月份,我想要的结果如下所示

 bill_months|
 Aug2k19    |
 Sep2k19    |
我尝试在下面的查询中使用self-join

 SELECT DISTINCT a.bill_month FROM bf_monthly_bill AS a INNER JOIN bf_monthly_bill AS b 
 on a.bill_month=b.bill_month WHERE a.company_id IN('134','391')

您可以按账单月分组,并在HAVING子句中设置条件:

SELECT bill_month 
FROM bf_monthly_bill 
WHERE company_id IN ('134','391')
GROUP BY bill_month
HAVING COUNT(DISTINCT company_id) = 2

您可以按账单月分组,并在HAVING子句中设置条件:

SELECT bill_month 
FROM bf_monthly_bill 
WHERE company_id IN ('134','391')
GROUP BY bill_month
HAVING COUNT(DISTINCT company_id) = 2

所有公司?或者具体的公司?具体来说,b能否至少有两个或两个以上的所有公司?或者具体的公司?具体来说,b可以至少两个或两个以上吗