0
我有一個簡單的數據在我的PostgreSQL數據庫9.5類似如下:PostgreSQL:如何根據臨界值分割範圍?
id c_value start_r end_r m_value
1 171 61 201 19.3
2 89 59 119 22.1
3 47 137 227 18.9
3 47 227 287 0.0
3 47 287 347 27.1
3 47 347 47 6.5
4 65 120 150 14.1
柱解釋:Id (integer)
而不是唯一的。 C_value (integer)
是關鍵的價值。 start_r (integer)
和end_r (integer)
是範圍的開始和結束值,而m_value (numeric)
是平均值。
對於每一行,我只需要根據c_value
修改start_r
和end_r
。也就是說,如果遇到臨界值,我需要將範圍分割成片,否則輸出將相同。預期結果如下:
id c_value start_r end_r m_value
1 171 61 171 19.3
1 171 171 201 19.3
2 89 59 89 22.1
2 89 89 119 22.1
3 47 137 227 18.9
3 47 227 287 0.0
3 47 287 347 27.1
3 47 347 47 6.5
4 65 120 150 14.1
有人可以建議我如何根據臨界值來分割範圍?
提示:LEAST(),GREATEST(),UNION ALL – wildplasser