SQL 创建标量函数 获取 类别 深度

来源:互联网 发布:游戏音效设计 软件 编辑:程序博客网 时间:2024/05/21 08:50
/****** Object:  UserDefinedFunction [dbo].[Func_GoodsclassDeep]    Script Date: 02/05/2015 08:57:40 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- =============================================-- Author:-- Create date: 2015-1-30-- Description:获取指定类别id记录的深度-- =============================================ALTER FUNCTION [dbo].[Func_Goods_Class_Deep] ( @id INT )RETURNS INTAS     BEGIN        DECLARE @deep INT        DECLARE @tempid INT         SET @deep = 0        SET @tempid = 0        WHILE @id != 0             BEGIN                SELECT  @tempid = parentid                FROM    tb_goods_class                WHERE   id = @id                 IF  @tempid >0                    AND @tempid != @id                     BEGIN                        SET @id = @tempid                        SET @deep = @deep + 1                     END                 ELSE                     BEGIN                         SET @id = 0                    END            END        RETURN @deep
    END
<pre name="code" class="sql">调用方法 

select dbo.Func_Goods_Class_Deep(id) from goods_class
可以直接 当列来使用

0 0
原创粉丝点击