sqlserver 中关于排序取数据的问题

SELECT * FROM (SELECT *,row_number() OVER (PARTITION BY wok.flag_3 ORDER BY wok.createtime desc)
   rownum FROM (select workh.corp_code,workh.corp_name,workh.begin_date, workh.createtime,
   workh.flag_1,workh.flag_2,workb.main_id,workb.production_quantity,workb.spare_capacity,
   workb.equipment_code,workb.flag_3  from imp_workorderh workh  right join imp_workorderb workb
   on workb.main_id = workh.id where workh.teachingplanid = '0000AA10000000016F6U') wok ) h WHERE h.rownum = 1)

此查询是按时间倒序排列后 然后取出rownum为1 的数据,具体情况可以根据实际需求修改

你可能感兴趣的:(sqlserver)