Re: Reasons of some limitations
Rick James Wrote:
-------------------------------------------------------
> "Reasons"... Here are some guesses:
>
> * MySQL started out as a lean database engine. It
> did not have subqueries, transactions, partitions,
> character sets, nor the items you mentioned.
Thank you, I did not know that. From this point, I see my problems in different light.
> * Most missing features are so rarely used that
> there is not enough "customer pull" to cause them
> to be added.
Oh, may be, may be. I just trying to calculate a some analytics on the DB side. Looks like, MySQL is not good DB for building data warehouse because it does not contain a good tools for understand data. This is OK, not every DB can be used for any cases.
> * Most features have workarounds. (FULL OUTER
> JOIN can be implemented with a UNION.)
In the simple case – yes, but try to implement full join in case you need to join a few ("few" is five or six or ten for me) tables by a few (!) columns. This is not a nice way.
> * Added features tends to add complexity, thereby
> adding bugs and slowdowns.
Of course. In the worst case, I am satisfied with the result in terms of reliability and speed, as in MSSQL ;o)
> When subqueries and
> partitioning were added, users used them only to
> find out that they did not help performance --
> sometimes even slowed things down.
OK, thank you.
I need a temporary tables because I reuse a some sub-results in a many cases. In some calculations I need a use a temporary table a few times in the single query and I can not do it without a copying temporary tables. If native implementation of re-using temporary tables can not be better than copying, I do not need it.
> One of the features you mentioned is available
> now:
>
> MariaDB added "Windowing functions" recently
> (version 10.2).
Thank you! Looks like "Windowing functions" is not dependent upon self-join on temporary tables. And other features that I mentioned, depend on this? Or is it independent of thing?