USP_SEGMENT_GETCOUNT

Gets the total count of constituents that fall within a given segment.

Parameters

Parameter Parameter Type Mode Description
@SEGMENTID uniqueidentifier IN
@COUNT int INOUT

Definition

Copy


            CREATE procedure dbo.USP_SEGMENT_GETCOUNT
            (
                @SEGMENTID uniqueidentifier,
                @COUNT int output
            )
            as
            begin
                declare @TABLENAME nvarchar(255);
                declare @PARAMDEF nvarchar(255);

                set @COUNT = 0;
                set @PARAMDEF = '@COUNT int output';
                select
                    @TABLENAME = IDSETREGISTER.DBOBJECTNAME
                from
                    dbo.IDSETREGISTER
                inner join dbo.MKTSEGMENT on MKTSEGMENT.IDSETREGISTERID = IDSETREGISTER.ID
                where
                    MKTSEGMENT.ID = @SEGMENTID;

                declare @SQL nvarchar(max);

                set @SQL = 
                '
                    select
                        @COUNT = count(*)
                    from dbo.' + @TABLENAME + ';
                ';

                exec sp_executesql @SQL, @PARAMDEF, @COUNT = @COUNT output;

                return 0;
            end