Précédent   Forum des professionnels en informatique > Bases de données > Décisions SGBD
Décisions SGBD Forum de décisions sur le choix en bases de données. Le Comparatif
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/03/2006, 17h00   #1
Membre du Club
 
Avatar de yoshï
 
Inscription : mai 2003
Messages : 158
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 158
Points : 41
Points : 41
Par défaut [Algèbre relationnelle]Expression algébrique

Bonjour,
j'ai un petit problème, je n'arrive pas à écrire une expression algébrique.

Avec la relation suivante
-R1(L,T,S,N,Pr,C) où C indique le classement des skieurs et skieuses (N et Pr) à chaque épreuve de type T, catégorie S (homme/femme) au lieu L;

Comment exprimer l'expression algébrique qui donne la réponse à la question suivante:
Qui est arrivé dernier de la descente homme de Chamonix?

En SQl c'est assez facile avec la fonction max qu'on applique sur la colonne Classement , on obtient une table à une entrée.
Mais avec les opérations de l'algèbre relationnelle (selection, projection, produit cartésien, union, difference) est ce possible et si oui comment faire?

Merci d'avance pour votre aide
yoshï est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2006, 17h01   #2
Xo
Expert Confirmé
 
Avatar de Xo
 
Inscription : janvier 2005
Messages : 2 701
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : janvier 2005
Messages : 2 701
Points : 3 237
Points : 3 237
Envoyer un message via Skype™ à Xo
Jé déplace dans "Général SGBD", en espérant que tu y trouves plus de réponses
__________________
"Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément." Nicolas Boileau

"Expliquer empêche de comprendre si cela dispense de chercher"

Quiz Oracle : venez tester vos connaissances !

La FAQ Oracle : 138 réponses à vos questions
Aidez-nous à la compléter
Xo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2006, 15h10   #3
Membre habitué
 
Inscription : février 2006
Messages : 118
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 118
Points : 116
Points : 116
La réponse à ta question est oui, on peut le faire mais je ne crois pas que c'est très utilisé, mise à part dans les écoles pour un peu illustrer le principe de fonctionnement d'une base de données.

Je pense que le plus juste c'est de faire une "Sélection":

F (ça représente une fonction) = ( L='Chamonix' et S='homme' et T='descente')

Voilà la fonction est définie, maintenant tu dois écrire le signe de la sélection (c'est une lettre grec) avec entre parenthèse le nom de la fonction que tu utilises puis hors de la parenthèse le nom de la relation sur laquelle tu appliques cette sélection:
SigneGrec (F) R1 | L | T | S | N | Pr | C
et ici tu écris les tuples restant après la sélection, donc ceux concernant les descentes hommes de Chamonix.

Reste à choisir uniquement celui qui est dernier, surement avec une nouvelle sélection sur ta nouvelle relation R2 (issue de la 1ère sélection), j'ignore comment on exprime la fonction. Surement un truc style
F2 = (C = min(C))

Au final y'aura une dernière opération qui sera une projection pour éliminer les champs inutiles et ne garder que N et Pr (nom et prénom je suppose...). Le signe de la projection c'est la lettre Pi.

Rfinal = Pi (R3)
Pr, N

C'est difficile d'écrire ces trucs ici... le Pr et le N sont en exposant, mais vers le bas.

Bref ta réponse sera probablement 1-2 Sélections puis une Projection! A l'issue de la 1ère sélection tu as une nouvelle relation R2, à l'issue de la 2ème tu as une nouvelle relation R3 et à l'issue de la projection tu as une relation de nom Rfinal (enfin c'est libre le nom).

En gros c'est ce que fais une base de données, elle sélectionne des tuples grâce à la clause WHERE (sélection), puis elle te donne les champs qui t'intéressent (projection). Il y a d'autres opérations possibles comme les jointures mais là tu n'as qu'une seule relation alors c'est pas très utile je crois.
yizashi est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h43.


 
 
 
 
Partenaires

Hébergement Web