Как получить последние 4 цифры ссн - PullRequest
3 голосов
/ 20 сентября 2011

Может кто-нибудь, пожалуйста, пожалуйста, помогите мне здесь; Я очень, очень смущен.

Я получаю значения ssn из базы данных Oracle с помощью этого запроса:

SELECT
substr(SSN,6)
FROM MYTABLE

и я получаю правильное значение последних 4 цифр

Когда я вставляю это значение в таблицу сервера sql, я получаю другое значение.

Например, давайте предположим, что ssn, который я беру, - 123456789, в Oracle я получаю 6789, что правильно.

Однако после вставки значения в таблицу сервера sql как Insert into mytable (ssn) values(ssn), значение отображается как 5678.

Я также попытался выбрать весь ssn как

SELECT
substr(SSN)
FROM MYTABLE

, а затем попробуйте вставить в базу данных sql server как:

Insert into mytable (ssn) values(right(ssn,4).

Я все равно получаю 5678.

Может кто-нибудь, скажите, пожалуйста, что я делаю не так?

Заранее большое спасибо

Ответы [ 2 ]

11 голосов
/ 28 ноября 2011

Это правильная вещь ...

SELECT RIGHT('123456789',4)

Или вы можете проверить длину поля, которое вы используете

0 голосов
/ 08 января 2014

Вы можете получить последние четыре цифры числа в Oracle с помощью простой функции substr.

select SUBSTR(ssn,(length(ssn)-4),4) from MYTABLE;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...