By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
Create table Test(
PP varchar(max)
);
insert into Test
values('{"start":"1","end":"13"}')
,('{"start":"1","end":"7"}')
,('{"start":"1","end":"200"}')
3 rows affected
create function Prime(@Start int ,@End int )
returns varchar(max)
begin
declare @i int,@j int,@r int
declare @Str varchar(max)
set @Str = '['
set @i=@Start
while @i<@End
begin
set @j=1
set @r=1
while @j<@i
begin
if @i%@j=0 and @i<>@j and @j<>1
begin
set @r=0
break
end
set @j=@j+1
end
if @r=1
set @Str = @Str + ' ' + Convert(varchar,@i)
set @i=@i+1
end
set @Str = @Str + ' ]'
return @Str
end
select PP
,dbo.Prime(json_value(PP,'$.start'),json_value(PP,'$.end'))
from Test
PP | (No column name) |
---|---|
{"start":"1","end":"13"} | [ 1 2 3 5 7 11 ] |
{"start":"1","end":"7"} | [ 1 2 3 5 ] |
{"start":"1","end":"200"} | [ 1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 ] |