需要使用 sql 查询根据 Table 1 中出现的结果导出 Table 2 中的出现次数

Need to derive count of occurrence in Table 2 based on the results of Occurrence in Table 1 using sql query

Table_1 有 order_id、country_id 详细信息

table_ID   order_id   country_id
1          100        IN
2          200        USA
3          300        UK
4          400        IN
5          500        UK
6          600        UK
7          700        USA
8          800        USA
9          900        IN
10         1000       UK

Table_2 有 shipment_id、order_id 详细信息

Shipment_ID   order_id   
1             100        
2             100        
3             100        
4             200        
5             200        
6             300        
7             300        
8             400        
9             500        
11            500
12            600
13            700
14            700
15            700
16            700
17            800
18            800
19            800
20            900
21            900
22            1000
23            1000
24            1000       

我使用以下查询找出 order_id 的列表,这些列表用于 country_id='IN'

select `order_id`
from `Table_1` 
where `country_id` = 'IN'; 

order_id
100
400
900

我需要指导来编写查询以查找 shipment_id 的计数,这些计数将从 'IN'[= 映射到 order_id 17=]

所以order_id100有3批,400有1批,900有2批

期望的最终输出

count_of_shipment_id
6

这是您需要的查询:

SELECT country_id, count(*) as count_of_shipment_id
FROM Table_1 a
inner join Table_2 b on a.`order_id` = b.`order_id`
group by country_id

如果您只需要一个国家/地区,您可以随时添加 "where" 或 "having" 来过滤结果。

在这里你可以看到你发布的示例: http://sqlfiddle.com/#!9/c90424/2