You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何利用SQL中第一个表的数据从第二个表获取数据

借助CUSTOMERS表从第二个表获取对应数据的SQL方法

首先得明确:要实现这个需求,核心是利用SQL JOIN语法——只要你的第二个表和CUSTOMERS表有一个共同的关联字段(比如CUSTOMERS的ID字段,对应第二个表的CUSTOMER_ID字段,这是最常见的关联场景),就能把两个表的数据关联起来,筛选出你需要的内容。

咱们先假设一个常见的第二个表场景,比如ORDERS表(记录客户的订单信息),结构和示例数据如下:

+-----+------------+-------------+--------+
| OID | DATE       | CUSTOMER_ID | AMOUNT |
+-----+------------+-------------+--------+
| 101 | 2023-01-05 | 1           | 500    |
| 102 | 2023-01-07 | 3           | 300    |
| 103 | 2023-01-09 | 5           | 800    |
| 104 | 2023-01-10 | 7           | 1200   |
| 105 | 2023-01-12 | 2           | 200    |
+-----+------------+-------------+--------+

这里ORDERS.CUSTOMER_ID和CUSTOMERS.ID是关联字段,下面用不同的JOIN方式演示如何获取数据:

1. INNER JOIN:获取两个表中匹配的记录

这个是最常用的,只会返回在两个表中都有对应关联数据的记录,比如只获取有订单的客户信息+他们的订单数据:

SELECT c.ID, c.NAME, c.ADDRESS, o.OID, o.DATE, o.AMOUNT
FROM CUSTOMERS c
INNER JOIN ORDERS o ON c.ID = o.CUSTOMER_ID;

执行后会得到所有有订单的客户和对应的订单详情,没有订单的客户(比如ID为4、6的Chaitali、Komal)不会出现在结果里。

2. LEFT JOIN:获取CUSTOMERS的所有记录,以及第二个表中匹配的记录

如果不管客户有没有订单,都要显示客户信息,没有订单的地方用NULL填充,就用LEFT JOIN:

SELECT c.ID, c.NAME, c.ADDRESS, o.OID, o.DATE, o.AMOUNT
FROM CUSTOMERS c
LEFT JOIN ORDERS o ON c.ID = o.CUSTOMER_ID;

结果里ID为4、6的客户会被显示,他们的订单相关字段(OID、DATE、AMOUNT)都是NULL。

3. RIGHT JOIN:获取第二个表的所有记录,以及CUSTOMERS中匹配的记录

如果想显示所有订单,即使某个订单对应的客户在CUSTOMERS表中不存在(比如测试数据里没有的客户ID),就用RIGHT JOIN:

SELECT c.ID, c.NAME, c.ADDRESS, o.OID, o.DATE, o.AMOUNT
FROM CUSTOMERS c
RIGHT JOIN ORDERS o ON c.ID = o.CUSTOMER_ID;

如果ORDERS里有一个CUSTOMER_ID为99的订单,那这条记录会被显示,对应的客户字段都是NULL。

4. FULL OUTER JOIN:获取两个表的所有记录

这个会返回两个表的所有记录,匹配的合并,不匹配的用NULL填充:

SELECT c.ID, c.NAME, c.ADDRESS, o.OID, o.DATE, o.AMOUNT
FROM CUSTOMERS c
FULL OUTER JOIN ORDERS o ON c.ID = o.CUSTOMER_ID;

结果包含所有客户(不管有没有订单)和所有订单(不管有没有对应客户)。

额外提示:如果第二个表的关联字段不是ID?

如果你的第二个表和CUSTOMERS的关联字段不是ID,比如用NAME(不推荐,因为可能有重名),只需要把JOIN条件改成对应的字段就行,比如:

SELECT c.*, o.*
FROM CUSTOMERS c
INNER JOIN YOUR_SECOND_TABLE o ON c.NAME = o.CUSTOMER_NAME;

内容的提问来源于stack exchange,提问作者sravan kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:28:47