首页 > 解决方案 > 在sql中连接两个表,一列到多列

问题描述

我想加入两列,比如说 t1 和 t2。

t1 中的serial_number列等于 t2 中的 3 列。我不想为每个查询编写不同的查询,而是想将它们写在一个查询中。

我最近的查询是:

select
   t1.date,
   t1.type,
   count(t1.serial_number) as qty,
from t1 left join t2 on t1.serial_number = t2.serial_number_x
where true
   and t1.age > 2
group by
   t1.date,
   t1.type

serial_number也等于serial_number_x, serial_number_y, serial_number_zt2 。我应该如何编写查询以便在 t1 中加入 t2 的所有序列号列。

提前致谢。

标签: sqlpostgresql

解决方案


看来您在 join 中发现了多个条件

select
   t1.date,
   t1.type,
   count(t1.serial_number) as qty,
from t1 left join t2 
on t1.serial_number = t2.serial_number_x
and t1.serial_number = t2.serial_number_y
and t1.serial_number = t2.serial_number_z
where 
    t1.age > 2
group by
   t1.date,
   t1.type

推荐阅读