如何用sql语言求水仙花数?
程序员文章站
2022-07-15 08:05:04
...
数据库,求水仙花数。
题目内容 :写一个存储程序并运行,将所有的水仙花数插入到表data1中,并查询data1全部数据。
1、创建data1表
create table data1(no int,data int);
2、了解floor函数(这很重要,因为MySQL会自动帮你四舍五入,避免进坑!)
floor (6.789)是6,也就是向下取整
2、废话不多说,上码!
CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`()
BEGIN
DECLARE i int DEFAULT 100;
DECLARE a int DEFAULT 0;
DECLARE b int DEFAULT 0;
DECLARE c int DEFAULT 0;
DECLARE no int DEFAULT 1;
while i<1000 do
SET a=FLOOR(i/100);
SET b=FLOOR((i-a*100)/10);
SET c=i-a*100-b*10;
if i=a*a*a+b*b*b+c*c*c THEN INSERT INTO
data1(no,data)VALUES(no,i);
END IF;
if i=a*a*a+b*b*b+c*c*c THEN SET no=no+1;
END IF;
set i=i+1;
end while;
SELECT *FROM data1;
END
运行结果截图
如果这代码对你有用的话,点个赞,如果大佬们觉得有什么需要改进的,希望在下方留言哦,我们一起进步!
上一篇: Servlet+JSP实现简单的员工CRUD(附源码)
下一篇: 数据库MYSQL的初步学习