• Jeff Moden

    SSC Guru

    Points: 993639

    n.dreyer - Thursday, January 10, 2019 7:19 AM

    Good article Steve
    What would the benefit then be using an iTVFs instead of a View? Or even better, an Indexed View?


    1.  You don't suffer the duplication of data (Indexed Views materialize extra data even if it's aggregated).
    2.  You don't suffer the slowdowns that Indexed Views can cause when doing inserts or updates (I've seen indexed views cripple both)
    3.  Another advantage is that iTVFs are similar to views except you can pass parameters to them.  Think of it as a "parameterized view".  It doesn't always work out to be an advantage (Indexed Views can be damned fast because all of the aggregation work has already been done during inserts and updates).

    --Jeff Moden

    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a row... think, instead, of what you want to do to a column.
    "If you think its expensive to hire a professional to do the job, wait until you hire an amateur."--Red Adair
    "Change is inevitable... change for the better is not."
    When you put the right degree of spin on it, the number 3|8 is also a glyph that describes the nature of a DBAs job. 😉

    Helpful Links:
    How to post code problems