• Jason A. Long - Saturday, October 21, 2017 4:55 PM

    At this point I'm more disappointed with myself than I am  any of the functions... 
    I knew yesterday that my weekend was going to be blown on a doing a search optimization project for work...  
    Basically, rather than going to bed like a normal human, I kept at it long after I'd lost focus and I let myself get rushed and sloppy.

    Heh... None of the rest of us has ever done such a thing before.  😉

    You're a good man, Jason.  Staying up late to help others even in the face of real work.  And then, doing the ultimate and admitting that a mistake has been made.  You can't ask for more than that.  My hat's off to you, good Sir.

    Sure enough... The OutputList for X3, showed an expression and the OutputList for X2 showed td.RN...
    After making the correction, they were both back to running in the 3.5 - 4 second range.

    On that note, I've made a function that I've used against the test data created by the generator that I posted just a bit back.  I resurrected an old Calendar table that I made for such a task with a "Business Day Number" and it's clocking in at about 1.3 seconds for a million rows of test data over the 2000 thru 2029 period as you've been testing for..  I don't want to post it yet because I'm double checking some of the edge cases and because there's a piece of code that I've been playing with that has the potential of 0.3 seconds, but I've not worked out the bugs yet.  Not sure I can.

    --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.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)