Not Useless Features

  • RonKyle - Friday, December 1, 2017 10:20 AM

    Analysis Services gets very little love. I would love to see some tools built into Visual Studio to assist with cube development and troubleshooting especially around MDX calculations. 

    Agreed.  With SQL 2017, it's not even the default installation.  I feel like MS is trying to push people off it.

    I think MS has semi-given up on it, since I don't think it's widely used. I do think that there is some traction for the engine as parts of the tech are used elsewhere, but I'd love to know what percentage of SQL customers actually have SSAS v SSDb installed.

  • Top of my wish list...
    #1 Inline Scalar UDFs.
    #2 GREATEST & LEAST functions.
    #3 that ability to use DISTINCT in windowed aggregates.
    #4 add a "print" option to sp_executesql that will allow you see the exact code that is being executed (I'd settle for a separate sp_printsql as well).

  • Steve Jones - SSC Editor - Friday, December 1, 2017 11:34 AM

    MattF - Friday, December 1, 2017 7:21 AM

    We use MDW extensively for monitoring our customer's databases - it saves them a lot in licensing third-party monitoring software. We had some concerns when there were some omissions with its SQL 2016 release, (a few performance counters were not populating) but thankfully these were addressed by a Connect post.

    Some software companies use a formal communication channel for receiving requests for enhancement or new features from their customers - I'm not aware of such a channel for SQL Server.

    Connect.microsoft.com

    I would suggest Connect is more of a site for bug fixes and 'change requests' to existing/incomplete features, rather than a formal customer-focused channel for new features or enhancements.

    MattF

  • Jason A. Long - Friday, December 1, 2017 12:41 PM

    Top of my wish list...
    #1 Inline Scalar UDFs.
    #2 GREATEST & LEAST functions.
    #3 that ability to use DISTINCT in windowed aggregates.
    #4 add a "print" option to sp_executesql that will allow you see the exact code that is being executed (I'd settle for a separate sp_printsql as well).

    GREATEST/LEAST already exist.  They're called MAX/MIN respectively.

    Drew

    J. Drew Allen
    Business Intelligence Analyst
    Philadelphia, PA

  • drew.allen - Friday, December 1, 2017 1:07 PM

    Jason A. Long - Friday, December 1, 2017 12:41 PM

    Top of my wish list...
    #1 Inline Scalar UDFs.
    #2 GREATEST & LEAST functions.
    #3 that ability to use DISTINCT in windowed aggregates.
    #4 add a "print" option to sp_executesql that will allow you see the exact code that is being executed (I'd settle for a separate sp_printsql as well).

    GREATEST/LEAST already exist.  They're called MAX/MIN respectively.

    Drew

    No they don't... You can use MIN & MAX, along with an unpivot to cobble a solution together but it isn't efficient due to the fact that the unpivot effectively creates a Carteasian product. A CASE expression is more efficient but gets painful to write after 4 or 5 elements.

  • More of an SSMS thing, but intellisense for Synonyms would be helpful.  Use one in a query and everything is red-squigle.

  • Jason A. Long - Friday, December 1, 2017 1:14 PM

    drew.allen - Friday, December 1, 2017 1:07 PM

    Jason A. Long - Friday, December 1, 2017 12:41 PM

    Top of my wish list...
    #1 Inline Scalar UDFs.
    #2 GREATEST & LEAST functions.
    #3 that ability to use DISTINCT in windowed aggregates.
    #4 add a "print" option to sp_executesql that will allow you see the exact code that is being executed (I'd settle for a separate sp_printsql as well).

    GREATEST/LEAST already exist.  They're called MAX/MIN respectively.

    Drew

    No they don't... You can use MIN & MAX, along with an unpivot to cobble a solution together but it isn't efficient due to the fact that the unpivot effectively creates a Carteasian product. A CASE expression is more efficient but gets painful to write after 4 or 5 elements.

    It sounds like you want an aggregate function that works over columns instead of rows.  Aggregates are functions over sets, and columns do not form sets, because that would violate normalization.

    Also, you're doing the unpivot wrong if you are getting a Cartesian product.

    Drew

    J. Drew Allen
    Business Intelligence Analyst
    Philadelphia, PA

  • drew.allen - Friday, December 1, 2017 2:06 PM

    Jason A. Long - Friday, December 1, 2017 1:14 PM

    drew.allen - Friday, December 1, 2017 1:07 PM

    Jason A. Long - Friday, December 1, 2017 12:41 PM

    Top of my wish list...
    #1 Inline Scalar UDFs.
    #2 GREATEST & LEAST functions.
    #3 that ability to use DISTINCT in windowed aggregates.
    #4 add a "print" option to sp_executesql that will allow you see the exact code that is being executed (I'd settle for a separate sp_printsql as well).

    GREATEST/LEAST already exist.  They're called MAX/MIN respectively.

    Drew

    No they don't... You can use MIN & MAX, along with an unpivot to cobble a solution together but it isn't efficient due to the fact that the unpivot effectively creates a Carteasian product. A CASE expression is more efficient but gets painful to write after 4 or 5 elements.

    It sounds like you want an aggregate function that works over columns instead of rows.  Aggregates are functions over sets, and columns do not form sets, because that would violate normalization.

    Also, you're doing the unpivot wrong if you are getting a Cartesian product.

    Drew

    What I want is the same damned thing that's in Oracle & MySQL. 
    They aren't aggregate functions. and no, they wouldn't violate any of the normal forms.
    I'm talking about functions that takes a series input parameter values (like COALESCE or CHECKSUM) and outputs the greatest or least of the supplied values.

    As far as me "doing it wrong" please, show me how to to it correctly... I have yet to find a way of unpivoting multiple columns without increasing the number of rows.

  • Jason A. Long - Friday, December 1, 2017 2:27 PM

    drew.allen - Friday, December 1, 2017 2:06 PM

    Jason A. Long - Friday, December 1, 2017 1:14 PM

    drew.allen - Friday, December 1, 2017 1:07 PM

    Jason A. Long - Friday, December 1, 2017 12:41 PM

    Top of my wish list...
    #1 Inline Scalar UDFs.
    #2 GREATEST & LEAST functions.
    #3 that ability to use DISTINCT in windowed aggregates.
    #4 add a "print" option to sp_executesql that will allow you see the exact code that is being executed (I'd settle for a separate sp_printsql as well).

    GREATEST/LEAST already exist.  They're called MAX/MIN respectively.

    Drew

    No they don't... You can use MIN & MAX, along with an unpivot to cobble a solution together but it isn't efficient due to the fact that the unpivot effectively creates a Carteasian product. A CASE expression is more efficient but gets painful to write after 4 or 5 elements.

    It sounds like you want an aggregate function that works over columns instead of rows.  Aggregates are functions over sets, and columns do not form sets, because that would violate normalization.

    Also, you're doing the unpivot wrong if you are getting a Cartesian product.

    Drew

    What I want is the same damned this that's in Oracle & MySQL. 
    They aren't aggregate functions. and no, they wouldn't violate any of the normal forms.
    I'm talking about functions that takes a series input parameter values (like COALESCE or CHECKSUM) and outputs the greatest or least of the supplied values.

    As far as me "doing it wrong" please, show me how to to it correctly... I have yet to find a way of unpivoting multiple columns without increasing the number of rows.

    There is a difference between increasing the number of rows and a cartesian product.  An unpivot is linear, but a cartesian product is geometric.

    Drew

    J. Drew Allen
    Business Intelligence Analyst
    Philadelphia, PA

  • drew.allen - Friday, December 1, 2017 2:37 PM

    Jason A. Long - Friday, December 1, 2017 2:27 PM

    drew.allen - Friday, December 1, 2017 2:06 PM

    Jason A. Long - Friday, December 1, 2017 1:14 PM

    drew.allen - Friday, December 1, 2017 1:07 PM

    Jason A. Long - Friday, December 1, 2017 12:41 PM

    Top of my wish list...
    #1 Inline Scalar UDFs.
    #2 GREATEST & LEAST functions.
    #3 that ability to use DISTINCT in windowed aggregates.
    #4 add a "print" option to sp_executesql that will allow you see the exact code that is being executed (I'd settle for a separate sp_printsql as well).

    GREATEST/LEAST already exist.  They're called MAX/MIN respectively.

    Drew

    No they don't... You can use MIN & MAX, along with an unpivot to cobble a solution together but it isn't efficient due to the fact that the unpivot effectively creates a Carteasian product. A CASE expression is more efficient but gets painful to write after 4 or 5 elements.

    It sounds like you want an aggregate function that works over columns instead of rows.  Aggregates are functions over sets, and columns do not form sets, because that would violate normalization.

    Also, you're doing the unpivot wrong if you are getting a Cartesian product.

    Drew

    What I want is the same damned this that's in Oracle & MySQL. 
    They aren't aggregate functions. and no, they wouldn't violate any of the normal forms.
    I'm talking about functions that takes a series input parameter values (like COALESCE or CHECKSUM) and outputs the greatest or least of the supplied values.

    As far as me "doing it wrong" please, show me how to to it correctly... I have yet to find a way of unpivoting multiple columns without increasing the number of rows.

    There is a difference between increasing the number of rows and a cartesian product.  An unpivot is linear, but a cartesian product is geometric.

    Drew

    If I unpivot 5 columns, it has the same impact, in terms of the numbers of rows being output in the result set, as doing a cross join to a 5 row table. How is that not a Cartesian product?

  • gcosler - Friday, December 1, 2017 10:28 AM

    I would like to see the Import task accept current Excel spreadsheets (.xlsx) rather than having to convert my current spreadsheets to pre-2007 format (.xls)!  They're both Microsoft products.  Come on Bill!

    The "ACE" drivers do that quite nicely but it would be nice if SQL Server kept up with such things.

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

  • Steve Jones - SSC Editor - Friday, December 1, 2017 11:34 AM

    MattF - Friday, December 1, 2017 7:21 AM

    We use MDW extensively for monitoring our customer's databases - it saves them a lot in licensing third-party monitoring software. We had some concerns when there were some omissions with its SQL 2016 release, (a few performance counters were not populating) but thankfully these were addressed by a Connect post.

    Some software companies use a formal communication channel for receiving requests for enhancement or new features from their customers - I'm not aware of such a channel for SQL Server.

    Connect.microsoft.com

    I've found that to be a bit of a Black Hole and the frequent answer is "Operates as Designed... closing the issue".

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

  • Steve Jones - SSC Editor - Friday, December 1, 2017 12:27 PM

    RonKyle - Friday, December 1, 2017 10:20 AM

    Analysis Services gets very little love. I would love to see some tools built into Visual Studio to assist with cube development and troubleshooting especially around MDX calculations. 

    Agreed.  With SQL 2017, it's not even the default installation.  I feel like MS is trying to push people off it.

    I think MS has semi-given up on it, since I don't think it's widely used. I do think that there is some traction for the engine as parts of the tech are used elsewhere, but I'd love to know what percentage of SQL customers actually have SSAS v SSDb installed.

    Maybe that would be a good site survey question? How many people have SSAS installed but don't use it, rarely use it, use it often or don't have it installed? Other than the Stairway to MDX series, I rarely see anything about SSAS or MDX come up here (granted I haven't been checking the forums actively). Maybe I am in the minority concerning its importance and need to start looking into other solutions before it is completely phased out? Hope not!

  • MattF - Friday, December 1, 2017 12:52 PM

    I would suggest Connect is more of a site for bug fixes and 'change requests' to existing/incomplete features, rather than a formal customer-focused channel for new features or enhancements.

    They look at it both ways. There is the ability to submit a suggestion as opposed to a bug.

  • ryanbesko - Friday, December 1, 2017 2:04 PM

    More of an SSMS thing, but intellisense for Synonyms would be helpful.  Use one in a query and everything is red-squigle.

    Submit an issue: https://github.com/Microsoft/sqlopsstudio

Viewing 15 posts - 16 through 30 (of 43 total)

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