Bonsoir,
Envoyé par
SQLpro
Envoyé par
fsmrel
Envoyé par
SQLpro
En fait l'opérateur de division à bien été demandé au comité de normalisation de SQL... Mais rejeté (Date, 6e édition de Introduction to Database Systems, opérateur DIVIDE BY ... PER).
Pourriez-vous m’indiquer la page de l’ouvrage cité, dans laquelle serai fait mention du rejet de l’opérateur de division par le comité, car je n’ai rien trouvé à ce sujet.
Il faudrait demander à Jim Melton, l'actuel rapporteur de la norme. je ne pense pas que c'était lui à l'époque, mais peut être il saura. De mémoire, je pense que c'est Peter Gulutzan qui m'en avait parlé !
A défaut, par le canal d’Internet, j’ai retrouvé un article de l’inévitable Joe Celko, traitant de la division relationnelle et qui écrit ceci :
In the sixth edition of his book, Introduction to Database Systems, Chris Date defined another operator (DIVIDEBY ... PER) which produces the same result as my query, but with more complexity.
Celko s’avance beaucoup quand il prétend que l’utilisation de l’opérateur de Date est plus complexe. Est-ce parce que cet opérateur prend en compte le diviseur égal à ∅ ? En tout état de cause, les deux requêtes que Celko propose comme solutions de l’énoncé :
Donner les noms des pilotes qui peuvent faire voler tous les avions se trouvant dans le hangar
sont quand même incomparablement plus compliquées que la suivante :
PilotSkills {pilot} DIVIDEBY Hangar {plane} PER PilotSkills {pilot, plane} ;
Requête qui, au vu de la structure des tables, peut du reste être ramenée à :
PilotSkills {pilot} DIVIDEBY Hangar PER PilotSkills ;
En tout cas, comme diraient les Dupondt, c’est mon opinion et je la partage...
A propos de Peter Gulutzan, on peut dire que le garçon n’est pas très regardant quant à l'Histoire de France. Dans son ouvrage "SQL-99 Complete, Really "(R&D Books, Miller Freeman, 1999, ISBN: 0-87930-568-1), au début du chapitre 30 "Searching with join", page 575, je relève un bel anachronisme : il fait jouer aux cartes René Descartes (mort en 1650), en compagnie de Madame du Barry (née en 1743).
Incidemment, quant à ce qu’il écrit à propos de la capitalisation des lettres, il n’y va pas non plus de main morte. Ainsi, il affirme tranquillement (page 98) « In France, the uppercase of the word "résumé" is "RESUME" ». Je renvoie Gulutzan à l’ouvrage de Maurice Grevisse, référence s’il en est, « Le bon usage » au paragraphe 86. Grevisse encourage à ne pas se relâcher dans l’utilisation des capitales accentuées. Si l’on ne veut pas passer pour un rustre, on doit faire de son mieux pour respecter la langue française.
Dans le même sens, et pour l'anecdote, pour expliquer que le nombre de retraités augmente, un journal ne doit certainement pas titrer « LES RETRAITES AUGMENTENT » (on peut rêver), pas plus que « UN POLICIER TUE » quand un policier a été tué. Si vous me proposez des PETITS FOURS SALES, j’y regarderai à deux fois avant d’y toucher... Dans la série des grands titres, il y a aussi « LES ENFANTS LEGITIMES », « LES MINISTRES INTEGRES » (même WORD repère ces ambiguïtés, mais pas toutes : « DOMINIQUE S’EST TUE », « LA SAISON DES CONGRES », « LE MINISTRE RESTE FERME »...) Liste non exhaustive.
Partager