在做我的项目时,我需要使用 mysql 找到整数的素因数分解,我认为这是除了做所有递归事情之外查询的有效方法。
而我想要实现的是找到组成整数的素数。
例如:对于102,阶乘数为:17 , 3 , 2
谢谢你。
信封策略的背面(仍然需要第 2 步的程序循环)
使用单个 int 列(主键)创建表“primes”
运行这个循环:
for $x = 2 to $n {
execute("
insert into primes (id)
select $x where not exists
(select * from primes as p where p.id <= sqrt($x) AND ($x mod p.id) > 0)")
}
使用上面的子查询列出特定 $x 的结果
此解决方案适用于 $n^2 的值。步骤 2 可以通过仅测试最后一位 1、3、7、9 的超过 9 的数字来改进。