© Your Copyright
CREATE TABLE repas (
jour DATE,
personne VARCHAR(20)
);
CREATE TABLE menus (
jour DATE,
plat VARCHAR(50)
);
CREATE TABLE gouts (
personne VARCHAR(20),
plat VARCHAR(50)
);
INSERT INTO menus VALUES ('2017-01-01','choucroute');
INSERT INTO menus VALUES ('2017-01-01','raclette');
INSERT INTO menus VALUES ('2017-01-02','kig ha farz');
INSERT INTO menus VALUES ('2017-01-02','raclette');
INSERT INTO repas VALUES ('2017-01-01','Jojo');
INSERT INTO repas VALUES ('2017-01-02','Jojo');
INSERT INTO repas VALUES ('2017-01-02','Nono');
INSERT INTO repas VALUES ('2017-01-01','Bibi');
INSERT INTO gouts VALUES ('Jojo','kig ha farz');
INSERT INTO gouts VALUES ('Jojo','raclette');
INSERT INTO gouts VALUES ('Bibi','cassoulet');
INSERT INTO gouts VALUES ('Nono','raclette');
INSERT INTO gouts VALUES ('Nanard','pizza');
\(R=\Pi_{personne}(\sigma_{[jour='2017-01-01']}(repas))\)
Trouvez les expressions correspondantes :
En langage de requêtes SQL :
sql : repas.sqlOutput
En arbre de requêtes :
Arbre de requêtes : graph825.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
En langage de requête SQL :
sql : repas.sqlOutput
En construisant l’arbre de requêtes :
Arbre de requêtes : graph828.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
\(R=\Pi_{personne}(\Join_{[repas.jour=menus.jour]}(repas,\Join_{[menus.plat=gouts.plat]}(menus,gouts)) )\)
Trouver une formulation en langage naturel :
Texte : inputlines830.txtZone de saisie de texte
Clavier Action F1 Afficher une aide technique F2 Afficher une aide pédagogique Ctrl-A Tout sélectionner Ctrl-C Copier la sélection dans le presse-papier Ctrl-V Copier le presse-papier dans la sélection Ctrl-X Couper la sélection et la copier dans le presse-papier Ctrl-Z Annuler la modification Maj-Ctrl-Z Rétablir la modification
Menu Action Ré-initialiser les sorties Faire apparaître le menu d'aide Valider la zone de saisie Initialiser la zone de saisie Charger le contenu d'un fichier dans la zone de saisie Sauvegarder le contenu de la zone de saisie dans un fichier Imprimer le contenu de la zone de saisie
Ecrire la requête SQL correspondante :
sql : repas.sqlOutput
Construire l’arbre de requêtes correspondant :
Arbre de requêtes : graph832.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
En écrivant la requête SQL correspondante
sql : repas.sqlOutput
En représentant l’arbre de requêtes :
Arbre de requêtes : graph835.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
\(R=\{ p \; | \; \forall j \; repas(j:jour,p:personne), menus(j,-) \}\)
Par une formulation en langage naturel :
Texte : inputlines837.txtZone de saisie de texte
Clavier Action F1 Afficher une aide technique F2 Afficher une aide pédagogique Ctrl-A Tout sélectionner Ctrl-C Copier la sélection dans le presse-papier Ctrl-V Copier le presse-papier dans la sélection Ctrl-X Couper la sélection et la copier dans le presse-papier Ctrl-Z Annuler la modification Maj-Ctrl-Z Rétablir la modification
Menu Action Ré-initialiser les sorties Faire apparaître le menu d'aide Valider la zone de saisie Initialiser la zone de saisie Charger le contenu d'un fichier dans la zone de saisie Sauvegarder le contenu de la zone de saisie dans un fichier Imprimer le contenu de la zone de saisie
Par une equête SQL :
sql : repas.sqlOutput
Par un arbre de requêtes :
Arbre de requêtes : graph839.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
SELECT *
FROM menus me
WHERE
(
SELECT plat
FROM gouts
WHERE personne='Jojo'
EXCEPT
SELECT plat
FROM menus mi
WHERE me.jour = mi.jour
) IS NULL;
Trouvez les formulations :
En langage naturel :
Texte : inputlines841.txtZone de saisie de texte
Clavier Action F1 Afficher une aide technique F2 Afficher une aide pédagogique Ctrl-A Tout sélectionner Ctrl-C Copier la sélection dans le presse-papier Ctrl-V Copier le presse-papier dans la sélection Ctrl-X Couper la sélection et la copier dans le presse-papier Ctrl-Z Annuler la modification Maj-Ctrl-Z Rétablir la modification
Menu Action Ré-initialiser les sorties Faire apparaître le menu d'aide Valider la zone de saisie Initialiser la zone de saisie Charger le contenu d'un fichier dans la zone de saisie Sauvegarder le contenu de la zone de saisie dans un fichier Imprimer le contenu de la zone de saisie
En arbre de requêtes :
Arbre de requêtes : graph842.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
CREATE TABLE repas (
jour DATE,
personne VARCHAR(20)
);
CREATE TABLE menus (
jour DATE,
plat VARCHAR(50)
);
CREATE TABLE gouts (
personne VARCHAR(20),
plat VARCHAR(50)
);
INSERT INTO menus VALUES ('2017-01-01','choucroute');
INSERT INTO menus VALUES ('2017-01-01','raclette');
INSERT INTO menus VALUES ('2017-01-02','kig ha farz');
INSERT INTO menus VALUES ('2017-01-02','raclette');
INSERT INTO repas VALUES ('2017-01-01','Jojo');
INSERT INTO repas VALUES ('2017-01-02','Jojo');
INSERT INTO repas VALUES ('2017-01-02','Nono');
INSERT INTO repas VALUES ('2017-01-01','Bibi');
INSERT INTO gouts VALUES ('Jojo','kig ha farz');
INSERT INTO gouts VALUES ('Jojo','raclette');
INSERT INTO gouts VALUES ('Bibi','cassoulet');
INSERT INTO gouts VALUES ('Nono','raclette');
INSERT INTO gouts VALUES ('Nanard','pizza');
\(R=\Pi_{personne}(\sigma_{[jour='2017-01-01']}(repas))\)
Trouvez les expressions correspondantes :
En langage de requêtes SQL :
SELECT personne FROM repas WHERE jour='2017-01-01';sql : repas.sqlOutput
En arbre de requêtes :
Arbre de requêtes : repas-01_01_2017.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
personne Jojo Bibi
En langage de requête SQL :
SELECT plat FROM repas r NATURAL JOIN menus m WHERE personne='Nono';sql : repas.sqlOutput
En construisant l’arbre de requêtes :
Arbre de requêtes : repas-Nono.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
plat kig ha farz raclette
\(R=\Pi_{personne}(\Join_{[repas.jour=menus.jour]}(repas,\Join_{[menus.plat=gouts.plat]}(menus,gouts)) )\)
Trouver une formulation en langage naturel :
Texte : inputlines854.txtZone de saisie de texte
Clavier Action F1 Afficher une aide technique F2 Afficher une aide pédagogique Ctrl-A Tout sélectionner Ctrl-C Copier la sélection dans le presse-papier Ctrl-V Copier le presse-papier dans la sélection Ctrl-X Couper la sélection et la copier dans le presse-papier Ctrl-Z Annuler la modification Maj-Ctrl-Z Rétablir la modification
Menu Action Ré-initialiser les sorties Faire apparaître le menu d'aide Valider la zone de saisie Initialiser la zone de saisie Charger le contenu d'un fichier dans la zone de saisie Sauvegarder le contenu de la zone de saisie dans un fichier Imprimer le contenu de la zone de saisie
Ecrire la requête SQL correspondante :
SELECT DISTINCT personne FROM repas NATURAL JOIN menus NATURAL JOIN gouts;sql : repas.sqlOutput
Construire l’arbre de requêtes correspondant :
Arbre de requêtes : repas-plats-preferes.json
TablesOpérateurs unairesOpérateurs binaires |
Vue d'ensemble | |
---|---|
|
personne |
---|
Jojo |
Nono |
En écrivant la requête SQL correspondante
SELECT personne FROM gouts EXCEPT SELECT personne FROM repas;sql : repas.sqlOutput
En représentant l’arbre de requêtes :
Arbre de requêtes : repas-jamais.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
personne Nanard
\(R=\{ p \; | \; \forall j \; repas(j:jour,p:personne), menus(j,-) \}\)
Par une formulation en langage naturel :
Texte : inputlines863.txtZone de saisie de texte
Clavier Action F1 Afficher une aide technique F2 Afficher une aide pédagogique Ctrl-A Tout sélectionner Ctrl-C Copier la sélection dans le presse-papier Ctrl-V Copier le presse-papier dans la sélection Ctrl-X Couper la sélection et la copier dans le presse-papier Ctrl-Z Annuler la modification Maj-Ctrl-Z Rétablir la modification
Menu Action Ré-initialiser les sorties Faire apparaître le menu d'aide Valider la zone de saisie Initialiser la zone de saisie Charger le contenu d'un fichier dans la zone de saisie Sauvegarder le contenu de la zone de saisie dans un fichier Imprimer le contenu de la zone de saisie
Par une requête SQL :
SELECT DISTINCT personne FROM repas re WHERE NOT EXISTS ( SELECT * FROM menus m WHERE NOT EXISTS ( SELECT * FROM repas ri WHERE m.jour=ri.jour AND ri.personne=re.personne ) );sql : repas.sqlOutput
Par un arbre de requêtes :
Arbre de requêtes : repas-division.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
personne Jojo
SELECT jour
FROM menus me
WHERE
(
SELECT plat
FROM gouts
WHERE personne='Jojo'
EXCEPT
SELECT plat
FROM menus mi
WHERE me.jour = mi.jour
) IS NULL;
Trouvez les formulations :
En langage naturel :
Texte : inputlines868.txtZone de saisie de texte
Clavier Action F1 Afficher une aide technique F2 Afficher une aide pédagogique Ctrl-A Tout sélectionner Ctrl-C Copier la sélection dans le presse-papier Ctrl-V Copier le presse-papier dans la sélection Ctrl-X Couper la sélection et la copier dans le presse-papier Ctrl-Z Annuler la modification Maj-Ctrl-Z Rétablir la modification
Menu Action Ré-initialiser les sorties Faire apparaître le menu d'aide Valider la zone de saisie Initialiser la zone de saisie Charger le contenu d'un fichier dans la zone de saisie Sauvegarder le contenu de la zone de saisie dans un fichier Imprimer le contenu de la zone de saisie
En arbre de requêtes :
Arbre de requêtes : repas-pour-Jojo.json
Tables
Opérateurs unaires
Opérateurs binaires
Vue d'ensemble
jour 2017-01-02