Итак, если вы только хотите выбрать числа ТОЛЬКО, то что-то вроде этого может работать:
create function [dbo].[IsNumbersOnly](@strSrc as varchar(255))
returns tinyint
as
begin
return isnumeric(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(
@strSrc, '\', 'x'), '-', 'x'), ',', 'x'), '+', 'x'), '$', 'x'), '.', 'x'), 'e', 'x'), 'E', 'x'),
char(9), 'x'), char(0), 'x'))
end
Ответ 4
SELECT column1 FROM table where ISNUMERIC(column1) = 1
Ответ 5
Вы можете использовать функцию перевода и замены вместе. сначала перевести числа в 0, а затем заменить их нулевым и вернуть только нулевые значения могут решить проблему.
select column from table where replace(translate(column,'0123456789','0000000000'),'0','') is null