Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 tsql isint  [new]
Go_456
Guest
есть таблица с полем test varchar(max)

как сделать выборку всех строк где test это целое число
2 апр 14, 16:22    [15822499]     Ответить | Цитировать Сообщить модератору
 Re: tsql isint  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
ISNUMERIC() + LIKE
2 апр 14, 16:28    [15822554]     Ответить | Цитировать Сообщить модератору
 Re: tsql isint  [new]
iap
Member

Откуда: Москва
Сообщений: 47083
Как проверить число и т.п.
WHERE
  CASE
   WHEN ISNUMERIC(Field)=1
    AND Field NOT LIKE '%[^0-9 +-]%'
    AND LEN(REPLACE(REPLACE(REPLACE(Field,' ',''),'-',''),'+',''))<=10
   THEN CASE WHEN CAST(Field AS BIGINT) BETWEEN -2147483648 AND 2147483647 THEN Field END
  END IS NOT NULL
2 апр 14, 16:38    [15822639]     Ответить | Цитировать Сообщить модератору
 Re: tsql isint  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8570
varchar(MAX) то не злоупотребляйте.
2 апр 14, 17:26    [15823008]     Ответить | Цитировать Сообщить модератору
 Re: tsql isint  [new]
Minamoto
Member

Откуда: Москва
Сообщений: 1162
Go_456, требования к версии SQL Server есть?

В 2012 есть try_convert.
2 апр 14, 18:15    [15823283]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить