基于多个列计算行数

时间:2014-09-16 11:46:03

标签: mysql join inner-query

所以基本上有两张桌子。

首先是位置表 -

id location_id city_name country_name
1  400212      Paris     Canada
2  400122      Paris     France
2  400122      Dubai     United Arab Emirates

其次是general_details表 -

id hotel_id city_name country_name
1  2323     Dubai     United Arab Emirates
2  1231     Dubai     United Arab Emirates
3  2344     Paris     Canada
4  1218     Paris     France

因此,假设我有两个来自表位置的country_name和city_name对。我想从表格的一般细节中为每个行选择行数。就像我有巴黎=>加拿大和巴黎=>法国,所以我的结果集应该有1,1,即它们各自的记录来自表general_details。我不知道该怎么做。我可以从表1中获得多对,我想要表2中的所有计数。

就像我制作了一系列城市和国家 -

array[0][city] = Paris, array[0][country] = France
array[1][city] = Paris, array[1][country] = Canada

现在我希望第二次查询后的输出结果集将count(*)设为1,1。

请在这里指导我。

1 个答案:

答案 0 :(得分:1)

试试这个:

 SELECT city_name,country_name, COUNT(*)
 FROM 
general_details 
WHERE 

city_name IN('Paris') AND country_name IN ('Canada' , 'France')

GROUP BY city_name,country_name