Slack SQL Server

  • Comments posted to this topic are about the item Slack SQL Server

  • Heh... ya just hit a sweet spot, Steve...

    Proper windowing functions that you can do proper aggregations like SUM(xxx) OVER() with so running totals and the like are a bit easier than having to use a cursor, while loop, triangular join, or quirky update.

    A CONNECT BY clause so we can do ad hoc hierarchies.

    A function or command that will build the left and right "bowers" for Nested Set Hierarchies in a parallel table to a Adjacency Table without destroying the Adjacency Table. Once built, make it easy to add and remove nodes and make some functions that will look up or down in the heirarchy based on the number of desired levels.

    Some functionality like we used to be able to get from sp_GetFileDetails except for a whole directory. Think "hibrid" between xp_DirTree and sp_GetFileDetails so we don't have to use sp_OA.

    sp_OA without the memory leaks and drops objects like Temp Tables do so that folks don't have to remember to do it.

    Sounds strange coming from me, for sure, but cursors that are self deallocating.

    BCP and Bulk Insert with a true line skip that counts end of line markers instead of delimiters so we can skip headers and footers that don't have the same format as the body of the file.

    Inline format files for Bulk Insert.

    A bloody fast split function like every other language has.

    Bring back CDOSYS but make it easier to use so we can send email to (yickch!) things like Lotus Notes. And, make it so that CDOSYS can be used with NOTIFY in SQL Server Jobs so we don't have to go through a lot of hooie setting up a bunch of stuff just to find out when a job failed and all we have is Lotus Notes.

    Some decent date functionality like being able to find the 4th Tuesday of every month in a given range of dates without a Calendar table.

    The ability to use Temp Tables and non-deterministic functions in UDF's.

    Make a random function that really works.

    Make GETDATE() return the actual time... if a query takes a minute to run right now, all GETDATE() does is return the exact same date and time for the entire run. If I recall correctly, that wasn't true in SQL Server 7.

    Real RegEx

    Make Pivot faster and more automatic. Cross-tabs are still easier to build and I've proven that they're faster than pivots in my crosstab article. And, I hate the guy because of his smart-aleck-mouth and know-it-all demeanor, but lookup the SSC member "Rog Pike" (Steve Dassin is his real name if memory serves) and his RAC functionality... it's actually some good stuff. Make sure true dynamic capabilites exist for the pivot, as well. There's other goodies he's made as well.

    Make it possible to use a variable for a column name or a table name.

    Make it possible to use both variables and column names in a Select list.

    Make a lightning fast Tally table function (like MySQL has, but that one is a dog).

    Add some spreadsheet functions line PMT, etc to the available functions.

    A SUBSTRING function that's capable of reading from the right like Oracle does.

    Make it easier to read delimited files and other formatted files from T-SQL like they've done in Excel without having to write a format file especially when it comes to text delimiters so REAL CSV files can be easily read.

    Make it easier to write delimited files from T-SQL.

    Make it easier to use the output of a stored procedure as a derived table than OPENROWSET currently does. And make sure the parameters can be variables. If they can put a TVF in the FROM clause, they should be able to do the same thing with a sproc.

    Make the file name and other "parameters" in Bulk Insert have the ability to be variables.

    Never ever get rid of the FROM clause in UPDATE or DELETE.

    Undeprecate the ability to SELECT columnalias = columnname_or_expression because it's perfect for testing UPDATES without doing an actual update. It also puts all the aliases in a spot that can easily read in the face of lengthy expressions.

    Make a "user" database called "UserMaster" or "Utilities" and make it work like the MASTER database where stored procedures, views, and functions that reside there will work from any database using only one or two part naming and they will work against the database they are being called from.

    Rewrite many of the system stored procedures so they are NOT RBAR like they currently are and they only return 1 result set so they can actually be used by other procs. sp_SpaceUsed is a good example of a RBAR proc and a no brainer. Hell, I'll send them the code!

    Self defragging MDF, LDF, and NDF files.

    The ability to defrag or rebuild all indexes in a database and or server with a single command. It should have the option to be an unobtrusive crawler that works in relative "idle" times.

    And, finally... the whole world runs on Excel spreadsheets... make it easier to create, read, and write Excel files. Of course, all parameters should be variables.

    There's a whole lot more that I'd have folks add "if I were in charge", but I can't remember them all now. Heh... I know... too bad I don't have any opinions in this area.

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

  • Hi,

    maybe not directly SQL Server, but how about porting all the standard data providers that are available in 32 Bit to 64 Bit.

    It's a PIA not being able to grab data either using the Jet driver or MSDASQL on our 64 Bit Datawarehouse (great example openrowset with Excel files). It can't be that difficult to port, and it would allow LOTS of people to finally port their work from the 32 Bit owrld to the 64 Bit world, without either having to write their own data providers, or buy 3rd party solutions.

    I know SSIS can do this, but why the HUGE overhead when a simple select can do the work.

    Either that, or release the source for said data providers!

    Greetings

    GermanDBA

    Regards,

    WilliamD

  • Platform independence.

    It'd be great to have the choice between various flavours of various operating systems.

    Semper in excretia, suus solum profundum variat

  • Reporting services working with cubes and browsing them. We had to keep COGNOS for a few users when we switched from Oracle recently as SSRS couldn't do the job with many (24 I think) dimensions.

  • PCI compliance for credit and bank data out of the box

    MVDBA

  • I would appreciate an Age function.

    It is only a small bit of code to calculate, I know, but I bet a lot of people would find it useful as a built-in function.

  • The fuzzy match that's in SSIS would be useful to use in some way on selecting data, Full Text just doesn't do it well enough.

    Facts are stubborn things, but statistics are more pliable - Mark Twain
    Carolyn
    SQLServerSpecialists[/url]

  • Working in the health industry, I'd really like to see row level security (virtual database) built into SQL Server.

    Robert

  • Error messages from BULK IMPORT or BCP that provide some useful information about the nature of the error.

    Native ability to import fixed format flat files with sign over punches and implied decimals.

    FTP ability to work with mainframe paths (not all paths start with a "\" Microsoft)!

    Ability to programmatically define SSIS tasks, specifically eliminate the need to define input fields by hand!

    Not the fault of MS, but SQL as a language SUCKS!!

    CTEs that are not re-executed every time referenced (#Temp tables are much faster!!)

    Accurate dependencies (has that been fixed in 2008?)

    Either eliminate Solution Manager, or support multilevel directory hierarchy.

    Solution Manager Save As should work as Save As does in the rest of the world; save a copy under a new name, not simply rename the existing object.

    And everything Jeff said 🙂

  • bank holidays and non working days functions

    MVDBA

  • michael vessey (1/23/2009)


    bank holidays and non working days functions

    Agreed. Has anyone else looked at the calculation necessary to work out Easter? I had to write one a few years back and, whilst it's accurate, the code is disproportionately horrible.

    Semper in excretia, suus solum profundum variat

  • majorbloodnock (1/23/2009)


    michael vessey (1/23/2009)


    bank holidays and non working days functions

    Agreed. Has anyone else looked at the calculation necessary to work out Easter? I had to write one a few years back and, whilst it's accurate, the code is disproportionately horrible.

    Hi Majorbloodnock,

    Phil Factor wrote about it on his blog not long ago: http://www.simple-talk.com/community/blogs/philfactor/archive/2009/01/18/71701.aspx

    HTH

    GermanDBA

    Regards,

    WilliamD

  • Excellent. Good article. Pity it was too late for me to have used.....

    Semper in excretia, suus solum profundum variat

  • My big beef is with the date functions. I often have to calculate how many years, months and days between two dates. SQL will tell you that there is one month between 5/15 and 6/01 or one year between 1/31/08 and 1/05/09. Therefore, we've had to write functions to calculate valid time spans.

    The date functions seem a lot like string functions to me. I wish there was more of a relationship between them and the calendar.

Viewing 15 posts - 1 through 15 (of 81 total)

You must be logged in to reply to this topic. Login to reply