在做我的项目时,我需要使用 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 的数字来改进。
关于mysql - 如何使用mysql分解整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11325562/