从每个十进制值中查找MAX值

时间:2017-07-03 13:43:05

标签: mysql

我只需找到那些值为序列号为最大值的记录。

代表

seq_id 
===============
239334.001
239341.001
239344.001
239345.001
239447.001
239334.004
239341.004
239344.004
239345.004
239447.004
239334.007
239341.007
239344.007
239345.007
239447.007

现在我只需找到十进制值最大的seq_id。 对于前。

seq_id 
===============

239334.007
239341.007
239344.007
239345.007
239447.007

那么任何解决方案?

由于

1 个答案:

答案 0 :(得分:0)

你可以尝试一下这个吗?

SELECT * 
FROM TT1 WHERE MYVAL-FLOOR(MYVAL)=
(select MAX(MYVAL-FLOOR(MYVAL)) DECIM_MAX
      FROM TT1
     ) ;

示例数据:

CREATE TABLE TT1 (MYVAL NUMERIC(10,3));
INSERT INTO TT1 VALUES (239334.001);
INSERT INTO TT1 VALUES (239345.007);
INSERT INTO TT1 VALUES (239447.007);


SELECT * 
FROM TT1 WHERE MYVAL-FLOOR(MYVAL)=
(select MAX(MYVAL-FLOOR(MYVAL)) DECIM_MAX
      FROM TT1
     ) 
       ;

输出:

    MYVAL
1   239345,007
2   239447,007