sql语句编程,用loop和while,分别输出1到100内素数和

 我来答
柯贤阳阳
2016-05-10
知道答主
回答量:11
采纳率:0%
帮助的人:6.7万
展开全部
--- 创建判断是否为素数函数
create function ChkIntIsSuShu(@No int)
returns tinyint
as
begin
if @No <=1
return 0
declare @maxV int, @Index int
set @maxV = @No -1
set @Index = 2
while @Index < @maxV
begin
declare @maxV2 int,@Index2 int
set @maxV2 = @maxV
set @Index2 = @Index
while @Index2 < @maxV2
begin
if @Index2 * @Index = @No
return 0
set @Index2 = @Index2 + 1
end
set @Index = @Index + 1
end
return 1
end
select dbo.ChkIntIsSuShu(13) -- 返回值1,表示素数,0表示非素数。
--- while 实例
declare @i int = 1,
@result int = 0
while @i <= 100
begin
if dbo.ChkIntIsSuShu(@i) =1
begin
set @result=@result + @i
end
set @i += 1
end
print @result

--补充 SQL 不支持LOOP 语法
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式