Scripta manent, verba volant
Citation:
Envoyé par
SQLpro
Citation:
Pour mémoire, je rappelle que c'est grâce à Hugh qu'en SQL vous pouvez utiliser des expressions de tables dans la clause FROM
Juste corriger un petite erreur... Ceci ne s'apelle pas expression de table, mais table dérivée.
Sauf à faire impunément du passé table rase, il ne s’agit pas d’une erreur. Hugh Darwen (sous un de ses noms de plume, Andrew Warden), a fourni en 1988 dans "The Relational Journal, Issue 3, March 1988)" un article intitulé "The Naming of Columns" et dans lequel il a écrit (les mots en gras le sont dans le texte original) :
"Can a table expression be used anywhere where a table name can be used?
In other words, a table-name is merely the trivial case of a table expression!
Would you tolerate a programming language (say a dialect of Fortran) in which you didn’t have complete freedom to use a formula of arbitrary complexity anywhere where a number is required?
Why the title of this article?
That wonderful property of true algebras (such as Relational Algebra), which guarantees that results are the same kind of things as the operands, is called closure..."
Les gens qui font la norme ont été attentifs à ce qu’a écrit Hugh qui fut le représentant d’IBM UK dans les instances, à partir de 1988.
Sans son plaidoyer, il se pourrait que l’on ne puisse toujours pas écrire :
FROM t1, ..., (Select ...) As Tj, ...
Pour des raisons d’antériorité et en hommage à Hugh et à ses collègues d’IBM UK qui ont fait BS12 entre 1978 et 1982 (et assassiné par le Monstre en 1985), je continuerai donc à utiliser l’expression originale "expressions de tables" ("relational expressions" dans BS12), en dépit des glissements sémantiques opérés ultérieurement par les gens de la norme. Vous pouvez retrouver l’article d'Andrew Warden dans Relational Database, Writings 1985-1989.