Description
Similar to FIRST_VALUE, but would allow the user to specify how many values to keep. This could use a MinMaxPriorityQueue under the covers and be much more efficient than using multiple NTH_VALUE calls to do the same like this:
SELECT entity_id, NTH_VALUE(user_id,1) WITHIN GROUP (ORDER BY last_read_date DESC) as nth1_user_id, NTH_VALUE(user_id,2) WITHIN GROUP (ORDER BY last_read_date DESC) as nth2_user_id, NTH_VALUE(user_id,3) WITHIN GROUP (ORDER BY last_read_date DESC) as nth3_user_id, count(*) FROM MY_TABLE WHERE tenant_id='00Dx0000000XXXX' AND entity_id in ('0D5x000000ABCD','0D5x000000ABCE') GROUP BY entity_id;
Attachments
Attachments
Issue Links
- incorporates
-
PHOENIX-3915 Implement LAST_VALUES to retrieve last n values
- Resolved