仅选择数值

时间:2019-02-13 05:52:18

标签: sql oracle integer

我的表格结构如下。

id            version     REQ_REF_ID
 3              1.2            6
 2              1.1            6
 1               1             6

我的查询在下面

Select * from XYZ where REQ_REF_ID = 6606 order by version desc FETCH FIRST 2 ROWS ONLY

它为我提供了最新的2行,其ID为3和2。

但是我只想获得version是整数而不是十进制值的这两行。

在这种情况下,我想获取id为1的行。

3 个答案:

答案 0 :(得分:3)

您可以检查ROUND函数以获取整数值

and ROUND(version) = version
  

ROUND返回将n舍入到小数点右边的整数位。

答案 1 :(得分:0)

您也可以使用TRANSLATE

 where translate(VERSION, '?1234567890', '?') is null

答案 2 :(得分:0)

您可以像这样检查

and (version)%1 = 0

%by 1将为您提供小数部分