如何在用户定义的函数中将数据库列作为参数传递?

Posted

技术标签:

【中文标题】如何在用户定义的函数中将数据库列作为参数传递?【英文标题】:how to pass a database column as a parameter in a user defined function? 【发布时间】:2019-07-04 08:49:47 【问题描述】:

我在 sql 中有一个用于字符串比较的代码,它接受两个参数作为输入,并返回一个结果。这两个参数都是单词,我想将参数从单个单词更改为数据库列。我怎么做?

例如在 java 中,它就像将数据存储在一个数组中,而不是传递整个数组。这样的事情可以在sql中完成吗?

【问题讨论】:

感谢您的回复! mysql 通过 wamp 服务器 表示您想将完整的列数据作为一个字符串传递,例如列数据有“一”“二”“三”它传递为“一,二,三”不清楚?? 如果可能显示用户定义的函数,然后给出例子 嘿,mangesh,有一列有城市名称,我想将我搜索的单词与每个名称进行比较,这意味着从 0 开始到结束.... 函数调用看起来像这样 compare_city_name("baroda", "agra"),这里我搜索的词是“baroda”,但不是传递“agra”,而是传递该城市名称的值一列接一列。 【参考方案1】:

您可以使用Select 查询将表中特定列的每个值传递到您的函数中。 像这样,

SELECT compare_city_name('baroda',t.cityname) from tablename as t

在此查询中,您将 cityname 列中的所有城市名称一一传递给函数 compare_city_name

【讨论】:

【参考方案2】:

将其作为VARCHAR 传递,然后使用“准备”和“执行”构建查询。

【讨论】:

以上是关于如何在用户定义的函数中将数据库列作为参数传递?的主要内容,如果未能解决你的问题,请参考以下文章

如何在类中将函数作为参数传递?

如何在 Dart 中将 Navigator 函数作为参数传递?

在 UDF 正文中将列作为参数传递

如何在 CoffeeScript 中将两个匿名函数作为参数传递?

如何在 C# 函数中将 jquery 变量作为参数传递

如何在C中将函数指针数组的函数指针作为函数参数传递?