mysql - 基于多列计算行数

标签 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

因此,假设我有来自表位置的两个国家/地区名称和城市名称对。我想从表一般详细信息中为它们选择行数。就像我有巴黎=>加拿大和巴黎=>法国,所以我的结果集应该有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。

请在这里指导我。

最佳答案

试试这个:

 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

关于mysql - 基于多列计算行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25867942/

相关文章:

mysql - 根据条件语句MYSQL昨天的价格在另一列中创建值

mysql计数相关表

mysql按子查询结果过滤

mysql - 内部查询错误,其中内部查询独立运行时不会产生错误

php - MySQL 中的 SUM 函数问题

php - 与 while 循环不同的值

php - 如何让我的应用程序在 appengine 上运行

mysql - 进行 LEFT JOIN 时,当第二个表中不存在匹配值时,匹配值将从结果中丢失

mysql - 全文匹配表达式可以在连接条件内工作吗

SQL INNER QUERY 在 UPDATE 查询中返回多个值