如何在 SQL Server Management Studio 中测试表值函数?

How do I test a Table-Valued Function in SQL Server Management Studio?(如何在 SQL Server Management Studio 中测试表值函数?)
本文介绍了如何在 SQL Server Management Studio 中测试表值函数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我从未使用过数据库函数,但我当前的项目需要它.我需要将一个常见的 sql 查询放入一个函数中,这样我们就不必在我们的代码中输入数百次.我已经创建了函数,但我不知道如何使用它.

功能代码如下:

<前>使用 [DB_NAME]走设置 ANSI_NULLS ON走设置 QUOTED_IDENTIFIER ON走更改功能 [dbo].[fn_GetConfigurationByProfile](@profileName AS NVARCHAR(50))退货表作为返回(-- 用结果集的行填充表变量选择 system_settings_groups.ssg_id、system_settings_groups.ssg_name、system_settings_groups.ssg_parent_group_id, system_settings_names.ssn_name,system_Settings_names.ssn_display_name, system_settings_values.ssv_valueFROM system_settings_profiles加入 system_settings_valuesON system_settings_profiles.ssp_id = system_settings_values.ssv_ssp_id加入 system_settings_namesON system_settings_names.ssn_id = system_settings_values.ssv_ssn_id加入 system_settings_groupsON system_settings_groups.ssg_id = system_settings_names.ssn_ssg_idWHERE system_settings_profiles.ssp_name = @profileName)

那么我将如何在 sql 查询中使用它?我只使用 SELECT fn_GetConfigurationByProfile('DEFAULTPROFILE') 吗?

这可能是一个业余问题,但好吧.我需要帮助:)

解决方案

你想使用FROM

例如:

选择...FROM fn_GetConfigurationByProfile('DEFAULTPROFILE')

SQL Server 用户定义函数

I've never worked with Database Functions, but my current project requires it. I need to put a common sql query into a function so we don't have to type it out in our code hundreds of times. I've got the function created, but I don't know how to use it.

Here's the function code:

USE [DB_NAME]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER FUNCTION [dbo].[fn_GetConfigurationByProfile]
(
    @profileName AS NVARCHAR(50)
)
RETURNS TABLE
AS
RETURN
    (
    -- Fill the table variable with the rows for your result set
    SELECT  system_settings_groups.ssg_id, system_settings_groups.ssg_name,
            system_settings_groups.ssg_parent_group_id, system_settings_names.ssn_name, 
            system_Settings_names.ssn_display_name, system_settings_values.ssv_value
    FROM    system_settings_profiles
    JOIN    system_settings_values
    ON      system_settings_profiles.ssp_id = system_settings_values.ssv_ssp_id
    JOIN    system_settings_names
    ON      system_settings_names.ssn_id = system_settings_values.ssv_ssn_id
    JOIN    system_settings_groups
    ON      system_settings_groups.ssg_id = system_settings_names.ssn_ssg_id
    WHERE   system_settings_profiles.ssp_name = @profileName
    )

So how would I use this in a sql query? Do I just use SELECT fn_GetConfigurationByProfile('DEFAULTPROFILE')?

This may be an amateur question, but oh well. I need help :)

解决方案

you want to use FROM

E.g :

select ...

    FROM fn_GetConfigurationByProfile('DEFAULTPROFILE')

SQL Server User-defined Functions

这篇关于如何在 SQL Server Management Studio 中测试表值函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

ibtmp1是非压缩的innodb临时表的独立表空间,通过innodb_temp_data_file_path参数指定文件的路径,文件名和大小,默认配置为ibtmp1:12M:autoextend,也就是说在文件系统磁盘足够的情况下,这个文件大小是可以无限增长的。 为了避免ibtmp1文件无止境的暴涨导致
SQL query to group by day(按天分组的 SQL 查询)
What does SQL clause quot;GROUP BY 1quot; mean?(SQL 子句“GROUP BY 1是什么意思?意思是?)
MySQL groupwise MAX() returns unexpected results(MySQL groupwise MAX() 返回意外结果)
MySQL SELECT most frequent by group(MySQL SELECT 按组最频繁)
Include missing months in Group By query(在 Group By 查询中包含缺失的月份)