首页  >  问答  >  正文

使用SQL查询多个表的数据

假设我们有三个表:

表1

|     c_id          |   categories     |   
|-------------------|------------------|
|      7            |       a          |     
|      4            |       b          |     
|      3            |       c          |

表2

|     c_id          |   dup_id     |   
|-------------------|--------------|
|       9           |     10       |     
|       5           |      3       |     
|       6           |      2       |  

表3

|     c_id          |  description |   
|-------------------|--------------|
|      22           |     xxxx     |     
|       5           |     yyyy     |     
|      11           |     zzzz     |  

假设如果Table1中的dup_id中的某些值等于Table2中的dup_id,那么我们可以找到dup_id对应的dup_id,并利用它来查找Table3中的description。做到这一点的最佳方法是什么?

输出:

|     c_id          |  description |   
|-------------------|--------------|    
|       5           |     yyyy     |

P粉151720173P粉151720173180 天前272

全部回复(1)我来回复

  • P粉288069045

    P粉2880690452024-04-04 14:26:03

    似乎是 3 个表的直接连接:

    select Table2.c_id, description
    from Table1
    join Table2 on Table1.c_id = Table2.dup_id
    join Table3 on Table2.c_id = Table3.c_id;

    回复
    0
  • 取消回复