如何获取ssn的最后4位数字

Ken*_*nny 4 sql-server oracle

请有人,请帮助我; 我非常非常困惑.

我使用此查询从oracle数据库中获取ssn值:

SELECT
substr(SSN,6)
FROM MYTABLE
Run Code Online (Sandbox Code Playgroud)

我得到了最后4位数的正确值

当我将该值插入一个sql server表时,我得到一个不同的值.

例如,让我们假设我正在抓取的ssn是123456789,在Oracle中,我得到6789这是正确的.

但是,将值插入sql server表后 Insert into mytable (ssn) values(ssn),该值显示为5678.

我也尝试选择整个ssn

SELECT
substr(SSN)
FROM MYTABLE
Run Code Online (Sandbox Code Playgroud)

然后尝试插入到sql server db中:

Insert into mytable (ssn) values(right(ssn,4).
Run Code Online (Sandbox Code Playgroud)

我仍然以5678结束.

谁能告诉我,我做错了什么?

非常感谢提前

小智 11

这是正确的事......

SELECT RIGHT('123456789',4)
Run Code Online (Sandbox Code Playgroud)

或者您可以检查您正在使用的字段的长度