如何根据变量分区选择上一个值

时间:2019-04-12 19:30:40

标签: postgresql

假设下表。我正在尝试为每个值分配与该值具有相同来源的先前类型。换句话说,我需要检查每一行的value_source,并找到与当前值的源具有相同源的类型。

表t

time | value | value_source | type | type_source
-------------------------------------------------
  1  |       |              |  i   |     A 
  2  |   6   |      A       |      |     
  3  |       |              |  j   |     B 
  4  |   2   |      A       |      |      
  5  |       |              |  k   |     B
  6  |   4   |      B       |      |      

预期结果:

value | value_source | type | type_source
-----------------------------------------_
      |              |  i   |     A 
  6   |      A       |  i   |     A 
      |              |  j   |     B 
  2   |      A       |  i   |     A 
      |              |  k   |     B
  4   |      B       |  k   |     B

如何在PostgreSQL中完成?

我尝试使用LAG函数,但是无法对诸如value_source = type_source之类的东西进行分区。

0 个答案:

没有答案