Както можете да видите, създавам group_id така че group_id =1 ще бъде по-малкият TimeStamp за всеки порт
Второто поле е time_id така че в ПОРЪЧАЙ ПО след като избера всички 1 донесе всички 2,3,4 за всеки порт.
SELECT * FROM ( SELECT *, row_number() over (partition by "port" order by "insertTimeStamp") group_id, row_number() over (order by "insertTimeStamp") time_id FROM Table1 T ) as T ORDER BY CASE WHEN group_id =1 THEN group_id ELSE time_id END LIMIT 4 ИЗХОД
<предварителен код>| вмъкване на TimeStamp | пристанище | данни | group_id | time_id ||-----------------|------|------|----------|---- -----|| 1 | 20 | ааа | 1 | 1 || 2 | 21 | аза | 1 | 3 || 15 | 22 | 2aa | 1 | 8 || 2 | 20 | аба | 2 | 2 |