Microsoft SQL 查询帮助
Posted
技术标签:
【中文标题】Microsoft SQL 查询帮助【英文标题】:Microsoft SQL query help 【发布时间】:2011-07-19 02:28:34 【问题描述】:我正在尝试从另一个标量值函数 (fn_SeqAvgSimilarityUnderNode2) 调用表值函数 (dbo.fn_SelectAlignedSequences)。这是查询
Create Function [dbo].[fn_SeqAvgSimilarityUnderNode]
(@AlnID int, @ParentTaxID int, @SeqTypeID int, @LocationID int)
RETURNS FLOAT
AS
BEGIN
Declare @AvgSim float
;With Seqs (SeqID) as
(-- All aligned sequences under the node
select dbo.fn_SelectAlignedSequences(@AlnID, @ParentTaxID, @SeqTypeID, @LocationID)
)
Select @AvgSim = AVG(Similarity)
From (
Select s1.SeqID
,s2.SeqID
,dbo.fn_pairwiseSimilarity(@AlnID, s1.SeqID, s2.SeqID) as 'Similarity'
From Seqs s1 cross join Seqs s2
Where s1.SeqID < s2.SeqID
) t
return @AvgSim
END
查询确实有效,但是当我调用函数 dbo.fn_SeqAvgSimilarityUnderNode 时,会弹出错误。
错误消息“找不到列“dbo”或用户定义的函数或聚合“dbo.fn_SelectAlignedSequences”,或者名称不明确。
是不是我做错了什么?
【问题讨论】:
【参考方案1】:没有看到 dbo.fn_SelectAlignedSequences 的代码,我很确定您需要指定要选择的列。
改变这个
With Seqs (SeqID) as
(-- All aligned sequences under the node
select dbo.fn_SelectAlignedSequences(@AlnID, @ParentTaxID, @SeqTypeID, @LocationID)
)
这样的事情
With Seqs (SeqID) as
(-- All aligned sequences under the node
select ColumnName FROM dbo.fn_SelectAlignedSequences(@AlnID, @ParentTaxID, @SeqTypeID, @LocationID)
)
【讨论】:
以上是关于Microsoft SQL 查询帮助的主要内容,如果未能解决你的问题,请参考以下文章
Microsoft Access 数据透视表到 SQL Server 数据透视表
Pyspark 连接到 Microsoft SQL 服务器?