• This is shocking for me, I've run both queries several times and using the view is at least twice faster. Am I missing something?

    This is the code I used to compare.

    Note: The code to query from the original tables is the code used by the view.

    DECLARE@tHCPCstable(

    hcpcvarchar(5),

    daysint,

    yearsint)

    INSERT INTO @tHCPCs

    SELECT 'A4310', 90,0 UNION ALL

    SELECT 'A4311', 90,0 UNION ALL

    SELECT 'A4314', 90,0 UNION ALL

    SELECT 'A4320', 90,0 UNION ALL

    SELECT 'A4322', 90,0

    DECLARE @Start_Datedatetime

    SET @start_Date = GETDATE()

    SELECT Claims.BILAMT_CT,

    Claims.CUSTNUM_CT,

    Claims.INSNUN_CT,

    Claims.INVNUM_CT,

    Claims.LNNUM_CT,

    Claims.PROCDE_CT,

    Claims.STDOS_CT

    INTO ##Test1

    FROM(

    SELECT

    c.bilamtBILAMT_CT,

    c.cusnoCUSTNUM_CT,

    c.insnoINSNUN_CT,

    CONVERT(int, c.invno)INVNUM_CT,

    c.lnenoLNNUM_CT,

    c.procdePROCDE_CT,

    CASE WHEN ISDATE(c.stdos) = 1

    THEN CONVERT(datetime,cast(c.stdos as char(8)),112)

    ELSE '1/1/1800' ENDSTDOS_CT

    FROM AR_LOAD_DATA.dbo.clmtrk c

    WHEREc.insno IN ('MCA', 'MCB', 'MCC', 'MCD', 'MC1', 'MC2', 'MC3', 'MC4')

    UNION ALL

    SELECT

    h.bilamtBILAMT_CT,

    h.cusnoCUSTNUM_CT,

    h.insnoINSNUN_CT,

    CONVERT(int, h.invno)INVNUM_CT,

    h.lnenoLNNUM_CT,

    h.procdePROCDE_CT,

    CASE WHEN ISDATE(h.stdos) = 1

    THEN CONVERT(datetime,cast(h.stdos as char(8)),112)

    ELSE '1/1/1800' ENDSTDOS_CT

    FROMAR_LOAD_DATA.dbo.cltrkH h

    WHEREh.insno IN ('MCA', 'MCB', 'MCC', 'MCD', 'MC1', 'MC2', 'MC3', 'MC4')) Claims

    JOIN@tHCPCs HCPCs ON Claims.PROCDE_CT = HCPCs.HCPC

    SELECT DATEDIFF( ms, @Start_Date, GETDATE())

    USE OtherDatabase

    SET @start_Date = GETDATE()

    SELECTc.CUSTNUM_CT,

    c.INVNUM_CT,

    c.PROCDE_CT,

    c.LNNUM_CT,

    c.INSNUN_CT,

    c.STDOS_CT,

    c.BILAMT_CT

    INTO ##Test2

    FROMdbo.vuClaimTrackAll c

    JOIN@tHCPCs t ON c.PROCDE_CT = t.hcpc

    WHEREc.INSNUN_CT IN ('MCA', 'MCB', 'MCC', 'MCD', 'MC1', 'MC2', 'MC3', 'MC4')

    SELECT DATEDIFF( ms, @Start_Date, GETDATE())

    DROP TABLE ##Test1

    DROP TABLE ##Test2

    Luis C.
    General Disclaimer:
    Are you seriously taking the advice and code from someone from the internet without testing it? Do you at least understand it? Or can it easily kill your server?

    How to post data/code on a forum to get the best help: Option 1 / Option 2