比较 select 命令中的两个字段

Comparing two fileds in select command

我正在尝试 select 来自 Transaction_Table 的所有记录,其中 Tr_Amount = Instrument_Number 使用以下代码

Select * from Transaction_Table
where abs(Tr_Amount) = Cast(Instrument_number as INTEGER)

但是 table 中有一些行,其中 Instrument_Number 是字母数字数据而不是纯数字数据。我有一种方法可以跳过命令中 Instrument_Number 字段中的字母数字实例。

切换到 TO_NUMBER,其中 returns NULL 表示错误数据:

Select * from Transaction_Table
where abs(Tr_Amount) = TO_NUMBER(Instrument_number)

TD15.10 实现了一个TRYCAST:

Select * from Transaction_Table
where abs(Tr_Amount) = TRY_CAST(Instrument_number as INTEGER)