我想在sqldeveloper(oracle sql)中使用minus命令比较两个表。使用程序(程序A)生成一个表(表A),该程序在列X中产生具有以下精度的值:
80.3921568627
表B(程序B)产生了以下版本的相同数据:
80.39215686
出于我的任务目的,我不关心超过两位小数的精度。如何修改我的查询语法(见下文)以忽略前两位小数以外的所有内容:
select id,a_val
from table_A
minus
select id,b_val
from table_B
答案 0 :(得分:3)
使用TRUNC
:
select id, trunc(a_val, 2) from table_B
minus select id, trunc(b_val, 2) from table_B
TRUNC
根本没有四舍五入,所以TRUNC(12.349, 2) = 12.34
。如果您希望12.349
被视为等于12.35
而不是12.34
,请在上面的示例中使用ROUND
代替TRUNC
。