如何仅加入数值

How to only join on numeric values

现在我有:

select
    a.id
    b.colone
    b.coltwo
from tablea a
left join tableb b on b.id = a.id

我收到 "numeric value not recognized" 错误,因为 b.id 中的一个值不是数字。我如何将结果从 tableb 连接到 tablea 只是省略非数字 value/row?或者我还能如何绕过这个错误?使用雪花。

谢谢!

您可以使用 TRY_TO_NUMBER():

select
    a.id
    b.colone
    b.coltwo
from tablea a
left join tableb b on TRY_TO_NUMBER(b.id) = a.id