Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / запрос на сравнение данных / 7 сообщений из 7, страница 1 из 1
03.01.2018, 15:45
    #39578994
Евгения1988
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос на сравнение данных
Доброго дня!
Есть две таблицы, содержащие ИНН.
в первой таблице ИНН записан в виде числа (тип bigint); во второй - в виде текста (тип varchar), то есть в значении имеются и ведущие нули и символы пробел и прочее. Нужно в результирующий набор вывести совпадающие значения (ИНН, которые встречаются в обеих таблицах).
я составила вот такой запрос:
select inn_1.inn from inn_1 where inn_1.inn = (select cast(inn_2.inn as bigint) from inn_2)
В результате выдает ошибку: Сообщение 8114, уровень 16, состояние 5, строка 1
Ошибка при преобразовании типа данных varchar к bigint.

Подскажите пожалуйста где ошибка в запросе?
...
Рейтинг: 0 / 0
03.01.2018, 15:54
    #39578996
Prolog
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос на сравнение данных
Начните с
Код: sql
1.
select inn from inn_2 where isnumeric(inn)=0 and nullif(inn,'') is not null
...
Рейтинг: 0 / 0
03.01.2018, 16:39
    #39579005
xenix
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос на сравнение данных
Код: sql
1.
2.
SELECT inn from inn_2
WHERE TRY_CAST(INN AS BIGINT) IS NOT NULL
...
Рейтинг: 0 / 0
03.01.2018, 16:41
    #39579008
Евгения1988
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос на сравнение данных
Prolog,
заранее извиняюсь за глупый вопрос, как говорится я еще только учусь..но я правильно понимаю, что Ваш запрос позволяет получить выборку из таблице 2 тех ИНН, которые однозначно нельзя будет преобразовать к числовому типу?
...
Рейтинг: 0 / 0
03.01.2018, 16:51
    #39579011
Евгения1988
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос на сравнение данных
xenix,Спасибо большое. работает.
правда не очень понимаю чем cast отличается от try_cast
...
Рейтинг: 0 / 0
03.01.2018, 16:53
    #39579013
xenix
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос на сравнение данных
Евгения1988,
не могу не повредничать :-) -поглядите справку. Если коротко, то CAST('Евгения1988' AS INT) упадет с "can not convert varchar to int",
а TRY_CAST вернет NULL
...
Рейтинг: 0 / 0
03.01.2018, 16:56
    #39579014
Евгения1988
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос на сравнение данных
xenix,очень изящная вредность которая идет во благо))))спасибо, Вы мне очень помогли)
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / запрос на сравнение данных / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]