On Apr 22, 2016, at 10:45 , Raymond Brinzer <ray.brin...@gmail.com> wrote:
> 
> Are there relational algebra expressions, or other operations
> necessary to a truly relational database, which cannot be translated
> into SQL?  I'm not aware that there are, but I'd be interested to hear
> of it.  If there were, there's a good chance you wouldn't be able to
> translate them into the parse tree, either.

The fundamental storage model needs to at least be a bit different. In 
particular, relations can't allow duplicates. You could have nulls (Codd 
proposed two different forms of null IIRC: a single null value and two 
different null values), although they should be more principled than the mess 
they are in SQL.

I am no expert on database optimization, but I understand that it is 
significantly easier to do query optimization in a properly relational 
database, as it forms a reasonably simple algebra, which can be optimized much 
as you would optimize evaluation of a numeric expression.

Major gains from a proper relational store would be:

- a better language, easier to parse, read and generate. Perhaps multiple 
equivalent query languages;
- other storage models (distributed and eventually consistent, say);
- simpler (in implementation and use);

We may also get some degree of faster and other good things. It also might be 
implemented in such a way that it can run as a server or more like SQLite.

-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to