我是sql初学者,所以我需要帮助.我有这样的tabe:在这里输入图像描述
我需要我的查询返回service_id: 5和id:8、2行(或者它取决于在where条件中放置了多少client_ids ),使用client_id、service_type_id、service_id,因为在这两个客户机上service_start_date是最大的。我有一个完整的客户名单,我需要这样做,谢谢你的回答。
发布于 2022-08-08 09:06:38
我使用了row_number() OVER( client_id ORDER BY (service_start_date) desc)分区)
它将给出行号,client_id service_start_date将降序。
select
*
from (select
service_id,
service_name,
service_start_date,
service_end_date,
client_id,
service_type_id,
row_number() OVER( PARTITION BY client_id ORDER BY (service_start_date) desc) as ord
from servicetable
/* add where condition here*/
order by service_id) as drt
where ord=1https://stackoverflow.com/questions/73275054
复制相似问题