在sql2000下通过查询分析器实现
1.创建表,结构如下
create table number(num int)
2.向表中插入[501,1000], [1501,2000]共1000个自然数
3.复制一张表,表结构和number表一样,表名为:table_3
4.把number表中所有是3的倍数的数字插入到新表table_3中并输出查看
5.复制一张表,表结构和number表一样,表名为:table_4
把number表中满足以下条件的数字找出来,插入到表table_4中
条件:该数各位数字相加,其和的个位是2
例如:数字525,5+2+5=12,个位是2
数字859,8+5+9=22,个位是2
数字8978,8+9+7+8=32,个位是2
sql语句的自然数运算
答案:2 悬赏:60 手机版
解决时间 2021-03-10 23:12
- 提问者网友:我们很暧昧
- 2021-03-10 02:42
最佳答案
- 五星知识达人网友:往事埋风中
- 2021-03-10 03:41
--创建 number 表
create table number(num int)
--向表中插入[501,1000], [1501,2000]共1000个自然数
declare @i int, @p int
set @i = 501
set @p = 1001
while (@i < 2001)
begin
while (@i < @p)
begin
insert into number values (@i)
set @i = @i + 1
end
if (@i = 1001)
begin
set @i = 1501
set @p = 2001
end
end
--复制一张表,表结构和number表一样,表名为:table_3
select * into table_3 from number where 1 = 0
--把number表中所有是3的倍数的数字插入到新表table_3中并输出查看
insert into table_3
select *
from number
where num % 3 = 0
--复制一张表,表结构和number表一样,表名为:table_4
select * into table_4 from number where 1 = 0
--把number表中满足以下条件的数字找出来,插入到表table_4中
insert into table_4
select *
from number
where (num/1000 + num/100%10 + num/10%10 + num%10)%10 = 2
create table number(num int)
--向表中插入[501,1000], [1501,2000]共1000个自然数
declare @i int, @p int
set @i = 501
set @p = 1001
while (@i < 2001)
begin
while (@i < @p)
begin
insert into number values (@i)
set @i = @i + 1
end
if (@i = 1001)
begin
set @i = 1501
set @p = 2001
end
end
--复制一张表,表结构和number表一样,表名为:table_3
select * into table_3 from number where 1 = 0
--把number表中所有是3的倍数的数字插入到新表table_3中并输出查看
insert into table_3
select *
from number
where num % 3 = 0
--复制一张表,表结构和number表一样,表名为:table_4
select * into table_4 from number where 1 = 0
--把number表中满足以下条件的数字找出来,插入到表table_4中
insert into table_4
select *
from number
where (num/1000 + num/100%10 + num/10%10 + num%10)%10 = 2
全部回答
- 1楼网友:狂恋
- 2021-03-10 05:07
mod(x,y)函数的意义是 求x除以y的余数,例如mod(5,2)=1,5除以2余1,mod(2,2)=0, 2除以2等于1余数是0,所以答案是0,这个程序块就是利用这样的求余的原理来循环判断1-100之间的偶数,凡是能被2除尽的就是偶数。
代码中for循环100次,i从100开始反向循环,99,98··以此类推到1截止退出循环。
if mod(i,2)=0 --
mod(i,2)=0的意思是i除以2无余数,如果无余数,则说明i是偶数(只有偶数除以2才能除尽)。
then s:=s+i; --
那么变量s加上这个偶数i变成新的s,进入到下一个循环判断,若非偶数直接进入下个循环,若为偶数s的值累加,直到循环结束,100以内所有的偶数累加成为最终的变量s。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯