在同一表中,同个序号有多条记录,想求同个序号在同个表中的最大时间的记录(或最小时间的记录)。

我们常用Over()及MAX(time)等查询,但还有另个同表相比较的方法,我感觉比较方便,故记录下来,以便后用。

--求最大时间记录,即b没有比a的时间再大了,那就是最大时间的记录
SELECT * FROM table1 a 
 WHERE serial_number='aa'
   AND NOT EXISTS(SELECT 1  FROM table1 b WHERE b.serial_number=a.serial_number AND a.out_process_time< b.out_process_time) 

--求最小时间记录,即b没有比a的时间再小了,那就是最小时间的记录
SELECT * FROM table1 a 
 WHERE serial_number='aa'
   AND NOT EXISTS(SELECT 1  FROM table1 b WHERE b.serial_number=a.serial_number AND a.out_process_time> b.out_process_time)  

 

 

相关文章:

  • 2021-06-30
  • 2021-04-29
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-09
  • 2022-01-25
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-05-22
  • 2022-12-23
  • 2021-09-17
  • 2021-10-01
  • 2021-10-03
相关资源
相似解决方案