Postgres的SQL查询

时间:2019-07-13 12:20:20

标签: sql postgresql postgresql-9.4

我正在尝试从一个表名“ t”编写查询。它主要有4列涉及我的查询。从此示例数据中,我需要一个特定的输出。

Unit_name      Unit_id_from   unit_transferred_to     Action
------------------------------------------------------------
UNITABC        011102X         0215478Y               CONVERTED  
UNITQWE        0222487Y        NULL                   NEW RAISED   
UNITASDF       0215478Y        NULL                   INVALID   
UNITPOU        0487985Z        08975469K              CONVERTED  
UNITHUT        08975469K       NULL                   INACTIVE

unit_transferred_to的名称实际上在第一列unit_name中。所以我需要unit_name中的unit_transferred_to名称,并且action ='converted'

输出需要如下所示:

Unit_name   Unit_id_from   unit_transferred_to     unit_transfer_name     Action
----------------------------------------------------------------------------------
UNITABC       011102X        0215478Y              UNITASDF               CONVERTED  
UNITPOU       0487985Z       08975469K             UNITHUT                CONVERTED

1 个答案:

答案 0 :(得分:0)

这似乎是join

select ti.Unit_name, ti.Unit_id_from, ti.unit_transferred_to,
       tito.unit_name as unit_transfer_name, 
       ti.Action
from ti join
     ti tito
     on ti.unit_transferred_to = tito.unit_transferred_from
where ti.action = 'CONVERTED'