spStats_VisitorSummary

Parameters

Parameter Parameter Type Mode Description
@BeginDate datetime IN
@EndDate datetime IN
@byFormat nchar IN

Definition

Copy


CREATE PROCEDURE dbo.spStats_VisitorSummary
(
@BeginDate datetime,
@EndDate datetime,
@byFormat nchar(1)

)
AS
BEGIN

    set nocount on

    -- All Visits
    DECLARE @Visits int
    -- Anonymous Visits (TOTAL) - If they don't log in to the site they are anonymous
    DECLARE @AnonymousVisits int
    DECLARE @Hosts int

    -- User Visits (TOTAL)
    -- user logged into the site at some point during session
    DECLARE @UserVisits int

    --Unique Users who have visited
    DECLARE @Users int    

    --One Page Visits
    DECLARE @OnePageVisits int

    --if we are grouping by month, get the data from the month table
    if @byFormat='m'
        SELECT 
            @UserVisits = SUM(UserVisits),
            @Users = SUM(Users),
            @Visits =  SUM(Visits),
            @Hosts = SUM(Hosts),
            @OnePageVisits = SUM(OnePageVisits)            
        FROM StatisticsMonthSite
        WHERE YYYYMM >= CONVERT(nchar(6), @BeginDate, 112)
        AND YYYYMM <= CONVERT(nchar(6), @EndDate, 112)
    else
        SELECT 
            @UserVisits = SUM(UserVisits),
            @Users = SUM(Users),
            @Visits =  SUM(Visits),
            @Hosts = SUM(Hosts),
            @OnePageVisits = SUM(OnePageVisits)
        FROM StatisticsDaySite
        WHERE YYYYMMDD >= CONVERT(nchar(8), @BeginDate, 112)
        AND YYYYMMDD <= CONVERT(nchar(8), @EndDate, 112)

    SET @AnonymousVisits = @Visits - @UserVisits

    SELECT  
    @AnonymousVisits [AnonymousVisits], 
    @UserVisits [UserVisits], 
    @Users [Users],
    --@VisitorsMoreOnce 'VisitorsMoreThanOnce', 
    --@VisitorsOnce 'VisitorsOnlyOnce',
    @Visits [Visits],
    @Hosts [Hosts],
    @OnePageVisits [OnePageVisits]

END