zoukankan      html  css  js  c++  java
  • 表值函数

    用户定义表值函数返回 table 数据类型。

    表值函数主要用于数据计算出来返回结果集。

    --不带输入参数的表值函数

    create function tvpoints()
    returns table
    as
    return
    (
    select * from tb_users
    );

    --调用

    select  * from  tvpoints()

    --对于多语句表值函数,在 BEGIN...END 语句块中定义的函数体包含一系列 Transact-SQL 语句,这些语句可生成行并将其插入将返回的表中。

    create function tvpoints1()
    returns @points table (x float, y float)
    as begin
    insert @points values(1,2);
    insert @points values(3,4);
    return;
    end

    --带参数

    create function tvpoints3(@x AS int,@y as int)
    returns @points table (x float, y float)
    as begin
    insert @points values(@x,@y);
    return;
    end

    --调用

    select * from tvpoints3(1,2)

    create function [dbo].[FGetSplitTable](@multiinput varchar(max))
    Returns @multitable Table(Text varchar(30))
    begin


    Declare @split char(1)
    Declare @store varchar(30)
    Declare @start int, @end int, @len int
    Declare @source varchar(max)

    Select @split = ','

    select @start = 1
    select @source = ltrim(rtrim(@multiinput)) + @split

    select @end = CharIndex(@split, @source, @start)
    select @len = Len(@source)

    While @start < @len
    Begin
    select @end = CharIndex(@split, @source, @start)
    select @store = ltrim(rtrim(SubString(@source, @start, @end - @start)))
    select @start = @end + 1

    If @store <> '' Insert into @multitable(Text) select ltrim(rtrim(@store))
    End

    return
    End
    go

  • 相关阅读:
    [NOTE]常用Linux命令总结[Thx for commandlinefu]
    [原]隧道Proxy原理详解(基于Node.js)
    [转]MySQL索引详解(1)
    [QA]服务端进程模型
    [转]MySQL索引详解(2)
    非动态规划实现LCS算法
    Java里线程安全的有界容器的实现
    maven历史版本下载
    JDK9下载
    maven排除依赖和添加本地依赖
  • 原文地址:https://www.cnblogs.com/anyihen/p/12335361.html
Copyright © 2011-2022 走看看