问题标签 [table-functions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
db2 - DB2 中的用户定义表函数
我想知道可以在 SQL-PL 中创建用户定义表函数的 DB2 平台。似乎在 DB2 for i 中是可能的,但我没有看到任何关于 LUW 的东西,而不是 z/OS。
它没有像许多其他流行特性一样出现在“跨平台开发版本的 SQL 参考”中。
sql - 有和没有存储过程调用的不同 SQL 行为
运行 MS SQL Server 2008,如果我执行以下查询,它会运行得非常快(2 秒或更短)并返回 906 行:
但是,当我将此代码移动到存储过程中时:
通话
运行速度慢得多(需要永远 - 我在 30 分钟后停止等待)。
在试验时,我只是将不带参数的代码放入这样的存储过程中
然后执行
这就像一个魅力 - 在 1 秒内相同的 906 行。知道可能出了什么问题以及如何使原始存储过程工作吗?
更新 如果我只传递这样的两个参数之一
然后执行
它工作正常,但如果我PriceUpdTime
改为创建一个参数,它不起作用,无论是我传递NULL
还是今天的日期作为字符串。
更新 2 这也是有效的:
然后执行任何一个
所以也许是参数嗅探,我该如何解决?
sql-server - SQL 选择表值函数的字段
我声明了一个表值函数,以便我可以一次返回多个值。这些值是使用 DECLARE 和 Maths 和 Date 函数计算的。
该功能的结构使得它只需要一个“记录日期”,以及支持系统中问题的优先级。老实说,我认为我可以选择如下:
我实际上结束了:
我看不到申请的可能加入(无论如何我都不完全理解)。
有人知道具有相同参数的函数调用是否会执行一次?如果在查询运行时我不会得到大量子查询和函数调用,那么我不在乎,如果不简洁,代码实际上是相当整洁的。
如果有大量开销,是否有人知道如何从此类表函数中选择所有列(即没有键,只是对相同输入数据进行多次计算)。
谢谢。
标记
sql - PostgreSQL 9.3:数据透视表查询
我想显示下表的数据透视表(交叉表)。
桌子:Employee
插入:
现在我想显示上述数据的数据透视表,如下所示:
预期结果:
说明:我想显示每个员工拥有的,Employee_Number
所有员工都拥有的,显示员工在多少组中可用,必须显示员工在其他组中可用,group_name 尚未分配最后必须以数据透视格式显示。TotalRoles
TotalGroups
Available
Others
Group_Names
r - 在 Twitter 用户列表上使用 Table 函数
我正在使用 TwitteR 包开发一个小功能。该函数将查看多个 twitter 帐户的关注者,并返回关注者列表及其出现次数。
为此,我使用一个简单的循环来创建一个包含所有关注者的列表:
运行循环后,我想应用 Table 函数以了解每个关注者出现在候选人中的时间
问题函数返回我以下错误
我强迫候选人成为向量而没有成功。您有什么想法可以克服这个问题,或者您知道要使用另一个函数来代替 table() 吗?
str(candidate) 返回一个元素列表,如下所示(我只放了其中一个元素):
oracle - 寻找可以用 BULK COLLECT INTO 填充的数据类型,然后用 SELECT 从中选择
我目前正在使用的 PL-SQL 包有一个很大的问题。
我要做的就是创建一小段代码来执行此操作:
在IS
函数部分:
稍后在代码中:
SELECT
最后在语句中使用这个变量:
我到ORA-22905: cannot access rows from a non-nested table item
这里。
我知道我可以只写AND col.table_name NOT IN ('TAB_1','TAB_2')
,但我不想在代码的最深坑中硬编码它......使它很难找到并且不太可配置。
我尝试了很多东西:
不工作。我收到一条错误消息,指出我不能在 SELECT 语句中使用本地声明的集合。
我试图将变量强制转换i_tabellen_excl
为本地声明的类型 - 就像一种解决方法。但我得到 ORA-00902 - 无效的数据类型。
我试图声明一个 VARCHAR2 包含一个带有逗号分隔表列表的字符串,它似乎正在工作,但它仍然远离一个干净、编写良好、设计良好的代码。
我尝试了其他不值得一提的选项,例如尝试编写函数等。
我在这件事上迷路了,任何想法都可以很好地测试出来。
split - DB2 SQL:在多行上使用递归 CTE 连接表函数(拆分字符串)
在 IBM DB2 V10 上,我创建了以下函数。此函数包含一个递归公用表表达式。它将文本字符串(例如'abc,def,ghi'
)拆分为具有三行的表格'abc'
,'def'
并且'ghi'
.
基本上,此函数在单个字符串上按预期工作。
产生下表:
但是,只要有一个表要连接多行,DB2 就会返回ERROR [42997] [IBM][DB2] SQL0270N Function not supported (Reason code = "").
这意味着,如果我执行了以下查询,但没有注释掉多个 select 语句,则会返回此错误。但是,每一行本身不会产生错误。
在 IBM Knowledge Center 上,我找不到原因,为什么不能在多行上连接这样的表函数。没有原因码的错误 SQL0270N(不支持函数)似乎也没有太大帮助。
无法处理该语句,因为它违反了以下原因代码所指示的限制:
我想在一个多行的子查询或表上加入这个函数。但是,如果没有有用的原因代码,我无法判断问题可能是什么。有没有人知道加入多行时可能会出现什么问题?
sql-server - SQL Server:我需要将行值作为参数传递给存储过程中的表函数
我想创建一个以表值函数为列的存储过程。我想使用其他列值之一作为函数的参数。
此过程将返回多行,我想使用第一列a.assetID
(即 a varchar(64)
)的值作为fGetAuditDescrConcat
函数的参数。
这可能吗?
sql - 卡在表功能
并使用以下数据库:
我现在卡在了,想给我一些关于开始它的建议吗?真的不知道从哪里开始
sql-server - 存储过程返回表函数,好不容易完成,卡在最后几部分
我想Report_NEWTotal_Salary_ByDept
使用(通过调用)我在这里创建的表函数创建一个存储过程:
基本上我想返回一个新表Report_NEWTotal_Salary_ByDept
。我希望这张表有 7 个新列:
这是我到目前为止所拥有的:
请考虑就如何完成它给我建议。