社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

递归运行mysql函数

Jack Rogers • 6 年前 • 861 次点击  

我在MySQL中有一个函数需要在一个查询中运行大约50次(不是一个设定值)。输入当前存储在数组中,例如 [1,2,3,4,5,6,7,8,9,10]

当单独执行MySQL查询时,它工作正常,请参见下面的

column_name 表示为其获取数据的列,在本例中,它是数据库中的一个双精度数

中的第二个值 MOD() 函数是我从前面的数组提供mysql的输入

SELECT id, MOD(column_name, 4) AS mod_output
FROM table
HAVING mod_output > 10

为了实现输出,我需要*以下代码工作

SELECT id, MOD(column_name, 4) AS mod_output1, MOD(column_name, 5) AS mod_output2, MOD(column_name, 6) AS mod_output3
FROM table
HAVING mod_output1 > 10 AND mod_output2 > 10 AND mod_output3 > 10

然而,这显然是非常肮脏的,当没有3个输入,但超过50,这将变得非常低效。

通过调用50多个单独的查询,是否有更好的方法来访问 同类 (见下文)产量?

在escence中,我需要为mysql提供一个值列表并运行它。 模式() 在一个指定列上覆盖它们。

我唯一需要返回的数据是 id 的行与 模式() 具有指定输入的函数输出(参见 模式() 函数)如果输出小于10

请注意, 模式() 已被用作示例函数,但是,所需的最后一个函数*应该是替换的

示例表格布局

id | column_name
1  | 0.234977
2  | 0.957739
3  | 2.499387
4  | 48.395777
5  | 9.943782
6  | -39.234894
7  | 23.49859
.....

(标题可能是错的,我不太确定你还能怎么解释我在这里要做什么)

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/30469
 
861 次点击  
文章 [ 1 ]  |  最新文章 6 年前